Dans certains cours que l'on trouve sur le web, on peut lire:

Avant d'aller plus loin, il est indispensable (voire obligatoire) de savoir utiliser le pattern MVC.
J'ai bien conscience que l'obligation, c'est pour la suite du cours. Mais ça m'a amené à me demander : à partir de quand passer à un model MVC? Idem pour les design pattern, à partir de quand les utilisez:
Est-ce un point de vue pratique? par habitude? est-ce que pour vous la taille du projet joue?
Autre question, à partir de quand utilisez-vous des classes? Est-ce pareil s'il faut "mapper" un objet d'une base de données?

Je sais que mes questions sont vagues. Voici donc un exemple fictif, décrit très rapidement:
vous devez construire un site web pour la réservation de livres. Le site comporte une partie admin qui permet de renseigner des nouveaux utilisateurs du site. Les utilisateurs étant :

  • client de la bibliothèque, qui pourront uniquement lister les livres qu'ils ont empruntés.
  • bibliothécaire qui peuvent enregistrer des nouveaux livres, réserver un livre pour un client, lister les livres de chaque client.
  • administrateur ayant accès à la partie admin (et étant bibliothécaire).



Dans la base de données, il y a une table utilisateur, livre, réservation.

  • Est-ce que vous utilisez pour ce "petit" exemple des classes php pour chaque table? un ORM?
  • Est-ce que le mvc est obligatoire?
  • Est-ce que la question du dependency injection se pose?



Bref, où trouver réponses à ce genre de question: l'expérience? Directement passer à du full scalable (mvc/orm/dic/...)? toujours commencer petit, puis "factoriser" au fur et a mesure?