Quelle est la différence entre les modèles de conception orientés objet et les principes? Sont-ils des choses différentes? Autant que j'ai compris les deux, essayez d'atteindre un objectif commun (E, g. Flexibilité). Alors, puis-je dire qu'un modèle est un principe et vice versa?
Principe de conception = SOLID (I.e. principe d'inversion de dépendance)
Modèle de conception = gof (I.e. Modèle d'usine abstraite)
Non, ils ne sont pas les mêmes.
Les modèles sont des solutions courantes à problèmes de programmation orientés objet. (Je ne suis pas au courant de livres similaires pour une programmation fonctionnelle ou déclarative.) L'idée a été cristallisée dans le célèbre livre de "modèles de conception" par le gang de quatre en 1995.
Comme l'indique ANDRE, les modèles sont courants dans tous les paradigmes. Je vais réitérer ma déclaration précédente: Je suis Pas au courant de livres similaires pour une programmation fonctionnelle ou déclarative, mais Andre a remédier à mon ignorance avec le lien qu'il a fourni ci-dessous. (Merci, Andre.)
Les principes sont moins importants sur des langues particulières ou des paradigmes, plus générales. "Ne te répète pas toi-même" - DRY Principe - est vrai pour toute la programmation.
Ces concepts ne sont pas identiques :
* principe de conception: * Les principes de conception de logiciels représentent un ensemble de directives qui nous aident à éviter d'avoir une mauvaise conception. Comme: principe de fermeture ouverte
* Modèle de conception: * Un modèle de conception est une solution générale réutilisable à un problème couramment dans un contexte donné dans la conception de logiciels. Comme: singleton
Les modèles sont des principes, quelles implémentations sont des modèles.
Un principe serait "indirect", qui pourrait être accompli par un modèle "usine", qui est mis en œuvre comme une classe avec des méthodes d'usine à la fin.
Les modèles sont plus de haut niveau que des principes. Les modèles résolvent des problèmes spécifiques. Les principes pourraient être appliqués n'importe où indépendamment du contexte. En réalité des motifs basés sur des principes (SRP, sec, etc.)
PAR EXEMPLE. Permet de regarder le modèle de stratégie. Il définit une famille d'algorithmes, encapsule chacun d'eux et les rend interchangeables. Donc, vous avez ici un concept d'algorithme de haut niveau. Avec le modèle d'état, vous avez un concept d'état de haut niveau. Avec des principes, vous n'avez pas de concepts de haut niveau. Les principes sont des blocs de construction, utilisés par des bagages pour atteindre l'objectif. Lorsque vous implémentez le modèle de stratégie, vous utilisez Solid:
Eh bien, les principes sont des règles tandis que les modèles sont leurs exemples concrets.
Modèles où documenté à l'origine pour l'architecture. En architecture, appliquez-la des choses allant du placement de la porte dans une pièce à la disposition d'un village.
Le gang de quatre a appliqué l'idée à la programmation orientée objet. Il peut y avoir plus d'un motif qui peut être utilisé pour résoudre un problème, mais chaque motif aura une implémentation spécifique. Les modèles existent dans d'autres approches de programmation, mais je ne suis au courant d'aucun livre applicable. Comme d'autres personnes ont mentionné des modèles couvrent des implémentations spécifiques. En utilisant un motif lorsqu'il ne s'applique pas est souvent considéré comme un anti-motif.
Les principes ne couvrent pas la mise en œuvre, bien qu'il puisse y avoir des approches de mise en œuvre standard. Les principes sont davantage sur la couverture des problèmes généraux plutôt que sur des problèmes spécifiques. Pour l'inversion du contrôle, je suis au courant d'au moins trois approches de mise en œuvre. Pour DRY (Ne vous répétez pas vous-même), je ne connais pas d'une approche de mise en œuvre spécifique SINGE, bien que j'utilise plusieurs.
Envisager
Oo principe de conception-
Oo principe est un ensemble de directives qui garantit OOP Concept. Basé sur le OOP concept, cela définit des moyens de concevoir une meilleure façon, une meilleure conception. La base OO Conception principe est solide.
Un modèle de conception fournit une solution générale à un problème de conception. Veuillez noter que le "modèle de conception" peut être appliqué sur le mot orienté objet de midi. Donc a OO des motifs de conception (OODPS) qui fournissent une solution générale à la conception orientée objet basée OO = principe. Les motifs de conception sont découverts, non inventés. Là Sont plusieurs façons de définir Oodps et le plus célèbre est BSc [Création de la structure comportementale].
Voici le lien pour une explication détaillée. http://techythoue.wordpress.com/2013/01/21/design-PrinPle-vs-ds-design-pattern-descritures-oop-elements/