Le principe que nous mettons systématiquement en place dans le cadre du développement des projets de nos clients est celui de la séparation du contenu, de la forme et de la logique. Ce principe permet d’apporter toute la souplesse qu’un client est en droit d’attendre d’un site ou d’une application Internet. Pour limiter les interactions entre les contenus, la présentation et le fonctionnel, il est en effet impératif que ces éléments soient séparés. Pratiquement, cela permet par exemple de venir modifier complétement la charte graphique d’un site ou d’une application Internet sans avoir à modifier ou retoucher le code qui assure la mise en oeuvre des fonctionnalités.
Pour techniquement répondre à ce principe, pour l’ensemble de nos projets, nous employons des solutions adaptées aux contraintes et aux budgets de nos clients. Ces solutions sont généralement issues du design pattern (ou motif de conception) appelé MVC (Model View Controller), sur lequel se basent les frameworks, CMS et CMF employés.
En voici quelques exemples, parmi celles que nous utilisons habituellement :
- Pour la forme : les systèmes de templates proposés par différents outils ou frameworks (Copix avec Smarty, Drupal avec PhpTemplate, Joomla, des gestionnaires de templates comme FastTemplate ou XTemplate). Ils sont accessibles via la couche View du design pattern MVC.
- Pour le contenu : l’utilisation d’un backend comme MySQL. Les accès au backend sont assurés par la couche Model du design pattern MVC. Cette couche met souvent à disposition des développeurs un ensemble de méthodes ou fonctions automatiquement générées, nous permettant ainsi d’accélérer nos développement et de nous concentrer sur la conception plus que sur la mise en oeuvre du code.
- Pour la logique : l’utilisation de la couche Controller du design pattern MVC. C’est là que se concentre les efforts des développeurs. Le développement du code métier se situe à cet endroit.