Le développement modulaire
Lorsqu'on démarre le développement d'une application, on peut être tenté de "taper du code au kilomètre".
C'est bien souvent une regrettable erreur qu'il vaut mieux éviter sous peine de pleurer devant son clavier quelques mois plus tard.
Je ne vais pas vous dire de prendre une feuille et de dessiner un schéma UML, c'est une chose que je fais assez rarement (désolé pour les puristes). Je me contente en général de petit dessins ou de quelques notes dans un éditeur de texte pour formaliser mes idées.
Si on analyse bien, au final ça revient pratiquement au même puisque la méthode de réflexion est presque identique. Comme beaucoup de choses que l'on peut apprendre au cours de sa vie, on les utilise parfois différemment mais les techniques de base améliorent nos raisonnements. Je ne veux donc pas entendre "il a dit que l'UML ça sert à rien", ce n'est pas du tout ça ;)
Un projet peut vous paraitre petit au départ mais voyez plus loin. Pensez aux futures mises à jour, aux évolutions ...
Votre code doit être réutilisable pour d'autres projets. En effet réinventer la roue est une perte de temps, il vaut mieux se concentrer sur les aspects nouveaux. N'hésitez pas à étudier les librairies existantes, les frameworks ... Utilisez-les si elles n'alourdissent pas trop votre développement et vous apportent ce dont vous avez besoin. C'est un mélange précis qui demande un peu d'entraînement.
J'oriente mon discours sur le développement WEB puisque c'est celui que je connais le mieux. Découpez au maximum votre application afin de pouvoir gérer votre IHM, le moteur applicatif et les données séparément. C'est ce qu'on appelle typiquement le modèle MVC. C'est essentiel pour l'évolution de votre projet. Vous obtenez alors une application souple qui saura évoluer sans devoir tout casser à chaque changement majeur.
Ajouter une couche de plugins est en général une excellente idée. Votre application pourra alors être enrichie sans toucher à son moteur principal. Il sera possible d'activer ou de désactiver les modules et permettra à des développeurs tiers d'apporter de nouvelles fonctionnalités sans risquer de briser la chaîne de mise à jour.

Commentaires
Tu voudrais quoi exactement ? Je peux écrire un autre billet sur le sujet si besoin.
Waw, j'apprécie votre travail, je vous remercie pour votre aide, et notez dans un 1er temps que je partage complètement ce point de vue. Permettez-moi d'insister, votre travail est vraiment bien bon, beaucoup d'infos instructives.