Ca résume la philosophie de la programmation objet
Les modèles mentaux trop complexes : la programmation objet permet de réduire la complexité unitaire de chaque "modèle" en limitant les dépendances (par opposition au modulaire)
La mauvaise traduction du modèle mental : le principe de la moindre surprise du Ruby On Rails est un très bon exemple (j'ai plus le terme exact en tête)
Pas assez de regroupement : deux lignes de code copiée-collées-modifiées plus de deux fois, ou une ligne répétée 3-4 fois est la manifestation d'une faute de conception en programmation "idéale". Ces "fautes" peuvent être justifiées bien sûr, donc commentées.
Utilisation obscure de vos bouts de code : ça rejoint le point précédent
Pas de chemin clair entre les différents modèles : là pour le coup je suis pas trop d'accord. Le besoin de comprendre un processus en détail
et dans son ensemble implique souvent un trop grandes dépendance entre les "modèles". Un système maintenable est un système qu'on n'a pas besoin de comprendre dans sa globalité, "qui appelle qui" etc. C'est une raison pour lesquelles je pense que le "MVVM" de microsoft est une aberration de conception en comparaison au MVC.
Inventer des algorithmes : écrire un algorithme se traduit inévitablement par un warning "complexité cyclomatique" dans checkstyle
. Ecrire un algorithme pour encoder un truc, sérialiser, interpréter, ok. Mais c'est pas de la programmation objet, c'est du modulaire.
Bref, il a écrit une manière très intéressante d'expliquer les fondements de l'objet !
Partager