Bonjour,

J'ai développé il y a près de 10 ans, un back office qui me convient très bien
Il me permet de créer des sites très rapidement et en les maitrisant totalement.
Il possède également une structure de base pour la partie public du site (entete de page (<head>), feuilles de styles, fonctions PHP et JS récurrentes, etc..)
Je l'ai construit au fil de l'eau et il répond parfaitement au besoin de mes clients.

Par contre techniquement il est complètement dépassé.
Je n'utilise pas ou pas bien l'objet, la gestion du cache, MVC, Ajax, templating, etc..

Je suis entrain de faire des recherches pour réécrire mon outil et j'aimerais avoir votre avis.

La contrainte principale, c'est la simplicité et la maintenance du code. Je ne veux pas d'une usine à gaz qui me prépare le café mais qui me prendra des mois à comprendre.
Pas envie non plus d’apprendre 2 ou 3 pseudo langages supplémentaires.
Je veux garder la main sur mon code, être capable de l'adapter pour des besoins spécifiques à mes clients ou généraux (amélioration de mon outil).
Et si possible que les techniques soit pérennes (espérer qu'en PHP6 elle fonctionne toujours !!!)

Il faut également que cela fonctionne sur des hébergements mutualisés en PHP 5.3 (donc sans possibilité d'installer des applications sur le serveur).

Sinon, les points importants que je voudrais améliorer:
- Meilleure structure de base (organisation des fichiers)
- Meilleur structure de base pour le code PHP
- Utiliser MVC et/ou un système de templating
- Mieux gérer le cache (optimisation)
- Gérer l'URL Rewriting
- Pouvoir utiliser une autre base de données que MySQL (ORM ?)
- Optimiser l'utilisation des éléments d'interface (éléments de formulaires, messages d'erreur, système de grid, etc..)

Pour cela, j'ai fais les choix suivants:
Structure des fichiers et du code:
HTML 5 BoilerPlate: http://html5boilerplate.com/
associé à Bootstrap pour la gestion des éléments d'interface.
LESS comme framework CSS

Reste le gros problème du MVC, systeme de cache, ORM, URL Rewriting.
Pour cela je pensais utiliser YII ou alors le baser sur le templating de PHPLib pour créer le mien.

Qu'est ce que vous pensez de ces choix...surtout concernant YII, car j'ai peur de l'usine à gaz qui manquerait de souplesse.

Merci pour votre aide

Marco
C'est marrant parce que tu reviens souvent sur le terme usine à gaz mais tu choisis HTML5 Boilterplate qui est la pire usine à gaz pour un simple "bootstrap" HTML/CSS.

Je ne connais pas Yii. Sur le papier ça à l'air pas mal. Ce qui me fait peur c'est ce truc de génération de code. Si le code a besoin/peut être généré automatiquement c'est peut être que l'architecture n'est pas optimale. Avec CakePHP, par exemple, tu utilises plutôt des conventions qui te permettent d'utiliser des méthodes pré-fabriquées sans générer de code supplémentaire.

Sinon il y a aussi pas mal de micro-frameworks comme TinyMVC qui te donnent une architecture de base et tu peux y greffer les composants que tu souhaites par la suite.
Merci JB
Et désolé pour le retard, mais j'étais malade...j'en ai profité pour creuser mes pistes et voici mes conclusions.

D'abord je ne trouve pas que BoilerPlate soit une usine à gaz...ce ne sont que quelques fichiers assez simples (à part le htacess) et tu pioches dedans les bonnes choses.

Pour mon BackOffice, je vais utiliser Bootstrap qui me parait simple à mettre en place et résoud la plupart des problèmes de construction d'une page d'administration (menus, formulaires, boutons multiples, etc..) et qui oblige à bien structurer ces pages (Grid, etc.)
J'ai voulu développer mon propre système de templating, mais j'ai abandonné..en fait, j'étais entrain de réinventer la roue !! J'ai donc choisi SMARTY...parce que je l'ai abordé plus facilement que TWIG, qu'il est plus ancien, donc peut être plus stable, que la communauté est plus importante et qu'il est utilisé par PRESTASHOP que l'on utilise également pour les sites E-Commerce.
Pour les CSS je me suis tourné vers LESS qui sera intégré à la prochaine version de Bootstrap.

J'ai laissé tombé les Frameworks comme Symphony, Yii...c'est trop long à apréhender et je n'ai pas le temps...De plus, je n'aime pas être dépend de ce genre d'outils assez opaque.
Et aussi parce que je travaille souvent sur des serveurs mutualisés et pas sur qu'ils acceptent ce genre d'outils...Donc, trop compliqué, trop lourd, trop long à apprendre...Et au final pourquoi: des fonctions génériques que j'ai déjà écrites et qui répondre à au moins 80% de mes besoins réguliers...le reste est bien ca sera du PHP classique.
Autre avantage, si j'ai besion d'un développeur pour m'aider..j'ai le choix...par contre trouver un mec qui maitrise un Framework, tu te limites vachement et le prix risque de pas être le même.

J'ai laissé tombé également ORM...trop compliqué, apparement lent à l'execution pour un gain pas suffisant.

Par contre, je vais regarder TinyMVC (et aussi MiniMVC que j'ai trouvé sur CodeCanyon).
Je ne pense peut être pas les utiliser tel que, mais au moins reprendre les bonnes idées et les bonnes pratiques.

Au final, je me retrouve juste à apprendre le language de SMARTY et DE LESS et mémoriser les classes de BOOTSTRAP...ca me parait un bon compromis.

Merci pour votre aide à tous...et sans doute à bientôt pour de nouvelles questions passionnantes !!!!

Marco