Caractéristiques souhaitables de la conception
2024-10-22 16:20:21 0 Signaler
Connectez-vous pour voir le contenu complet
Autres créations de l'auteur
Plan/Contenu
Minimiser la complexité
Le principal objectif du design devrait être de minimiser la complexité. Évitez de faire des designs « intelligents ». Les designs intelligents sont généralement difficiles à comprendre. Au contraire, faites des designs « simples » et « faciles à comprendre ». Si votre design ne vous permet pas de vous immerger en toute sécurité dans une partie spécifique en ignorant la plupart des autres parties du programme, alors ce design n'a pas rempli son rôle.
facile à entretenir
La facilité de maintenance signifie concevoir pour le programmeur de maintenance. Imaginez sans cesse les questions que le programmeur de maintenance vous poserait sur votre code. Considérez le programmeur de maintenance comme votre audience, puis concevez le système de manière à ce qu'il soit autodidacte.
connectivité minimale
La connectivité minimale signifie concevoir en minimisant les connexions entre les différentes parties d'un programme. Utiliser les principes de cohésion forte, de couplage faible et de masquage d'informations pour concevoir des classes avec le moins de connexions possibles. La connectivité minimale minimise le travail pendant l'intégration, les tests et la maintenance.
Réutilisabilité
La réutilisabilité signifie que, lors de la conception d'un système, vous pouvez réutiliser ses différentes parties dans d'autres systèmes.
lean
Lean signifie concevoir un système de manière à ce qu'il n'ait pas de parties inutiles (Wirth, 1995; McConnell, 1997). Voltaire a dit que la fin d'un livre, ce n'est pas qu'on ne peut plus y ajouter quoi que ce soit, mais qu'on ne peut plus en enlever quoi que ce soit. C'est particulièrement vrai dans le domaine du logiciel, car lorsqu'on modifie d'autres codes, il faut développer, examiner, tester et prendre en compte du code supplémentaire. Les futures versions du logiciel doivent être compatibles avec le code supplémentaire.
normalisation
Un système est plus intimidant pour quelqu'un qui essaie de le comprendre pour la première fois, plus il dépend de composants extérieurs. Essayez d'utiliser des méthodes génériques standardisées pour donner à l'ensemble un sentiment de familiarité.
Extensibilité
La extensibilité signifie que vous pouvez améliorer le système sans détruire la structure de base. Vous pouvez modifier une partie du système sans affecter les autres parties du système. Les modifications les plus probables causent le moins de dommages au système.
Haute fan-in
Un haut degré d'entrée signifie que le nombre de classes qui utilisent une classe donnée est élevé. Un haut degré d'entrée signifie qu'un système est bien conçu en tirant pleinement parti des classes utilitaires de niveau inférieur dans le système.
modérée à faible débattement
La faible et moyenne dégagement signifie qu'une classe n'utilise que peu d'autres classes. Un haut dégagement (plus de 7) indique qu'une classe utilise de nombreuses autres classes, ce qui peut rendre la classe trop complexe. Les chercheurs ont découvert que le principe de faible dégagement est bénéfique, que l'on considère le nombre de routines appelées à l'intérieur d'une routine ou le nombre de routines appelées à l'intérieur d'une classe.
Portabilité
La portabilité fait référence au fait que la conception d'un système doit faciliter son déplacement vers un autre environnement.
conception en couches
La conception en couches consiste à conserver autant que possible la décomposition en couches, de manière à ce que vous puissiez examiner le système à n'importe quel niveau et obtenir une vue cohérente. Lors de la conception d'un système, vous pouvez l'examiner à un niveau sans avoir à vous plonger dans les autres niveaux.
0 Commentaires
Page suivante
Recommandé pour vous
Voir plus