Bonjour,

Je me suis lancé dans la conception d'un site web personnel et je me demandais quel type d'architecture utiliser.

En effet, je remarque depuis mon entrée comme développeur en entreprise, que le web évolue beaucoup vers une direction particulière : une séparation totale entre la logique métier et l'affichage.

Certains diraient que c'est le but du pattern MVC, mais je trouve que l'on dépasse ce concept.
En effet, la logique métier est de plus en plus développée sans du tout tenir compte de la partie affichage : sous forme de services web renvoyant des données. La partie affichage est alors entièrement relayée au navigateur web et on obtient un "véritable" client riche.

Actuellement, pour beaucoup de sites, le serveur se charge de rassembler les informations nécessaires, puis génère une page HTML qu'il envoie au client. Dans ce que je vois maintenant de plus en plus en entreprise, le serveur se décharge totalement de cette partie.

On pourrait résumé ce qui se passe comme suit :
* Le client demande au serveur le layout
* Le client communique ensuite avec le serveur qui ne lui renvoie plus que des données au format JSON ou XML par exemple. Il se débrouille alors grâce à des langages dynamiques comme le Javascript pour faire évoluer l'interface en fonction des besoins.

Le gros avantage de cette manière de penser est qu'on a pas de rechargement total de la page : le layout n'est jamais rechargé. On a donc une meilleur continuité dans la navigation.
En plus, la partie cliente étant séparée de la partie serveur (qui gère alors la logique métier sans se soucier de la manière dont les données qu'il transmet seront affichées). Le travail est donc plus facile pour les designers et les développeurs.

J'ai d'ailleurs remarqué que cette tendance était implémentée par des géants du web comme google avec Gmail.

Voilà, j'aimerais avoir votre avis de développeurs web pour savoir ce que vous pensez de cette évolution, de son avenir, de ses qualités et de ses défauts.

Merci par avance pour vos réponses.