85 votes

Apprentissage/mise en œuvre des modèles de conception (pour les débutants)

Je suis confus débutant et amateur programmeur en essayant d'obtenir une poignée sur ce, donc pardonnez-moi si ma question est un peu hors tension ou ne pas faire beaucoup de sens.

Je vois beaucoup de questions DONC, tournant autour de l'utilisation de modèles de conception, et je me demandais si quelqu'un a un bon de ressources pour l'apprentissage et la mise en œuvre de modèles de conception? Je comprends l'idée générale, et de savoir comment et quand utiliser un couple d'entre eux(les Singletons, les méthodes de Fabrique), mais je sais que je suis absent.

(Seulement en cas de questions, ma langue de préférence en C#, mais j'ai pu apprendre à partir d'exemples dans d'autres langues)

84voto

Bill the Lizard Points 147311

La Tête La Première, Les Modèles De Conception

alt text

et le Modèle de Conception de page de Wikipédia sont les meilleures ressources pour les débutants. FluffyCat est un autre bon, ressource en ligne gratuite pour les modèles de conception dans les deux Java et PHP.

La bande des Quatre livre est l'endroit où aller par la suite, mais il est assez avancé, donc je préfère attendre jusqu'à ce que vous avez une assez bonne compréhension à partir d'autres ressources.

27voto

KeesDijk Points 1718

Les Design patterns sont grands pour diverses raisons:

  1. vous donne un point de départ pour la résolution de problèmes courants.
  2. donne aux développeurs un vocabulaire pour parler de certaines façons de résoudre les problèmes de manière très compacte.
  3. lorsque l'on travaille avec des développeurs qui connaissent les modèles de conception et que vous utilisez les modèles de conception de vos solutions qu'ils vont comprendre les solutions beaucoup plus vite.

Mais si votre but est juste d'apprendre des modèles de conception je pense qu'il vous manque les bases. Tous les modèles de conception sont fondées sur des principes communs. Une Cohésion élevée, Faible Couplage Principe Ouvert Fermé, au SEC, Principe de Substitution de Liskov etc. Pour ces principes de base, je lirais les livres suivants dans cet ordre:

  1. La tête la Première Analyse Orientée Objet et des Design (Tête Première) [ILLUSTRÉ] (livre de Poche)
  2. L'application UML et les modes (couverture rigide)
  3. Agile Principes, Modèles et Pratiques en C# (Robert C. Martin de la Série) (couverture rigide)

Après que vous êtes prêt pour la bande des quatre modèles de conception

  1. La tête la Première, les Modèles de Conception (Tête Première) [ILLUSTRÉ] (livre de Poche)
  2. La BIBLE
  3. Un joli site web (ne pas acheter n'importe quoi, c'est pas la peine) http://dofactory.com/Patterns/Patterns.aspx (certaines implémentations de ce site sont la peine d'une discussion

La prochaine étape:

  1. Les modèles de l'Architecture des Applications d'Entreprise (Addison-Wesley de la Série Signature) (couverture rigide)
  2. Les POSA les livres

Et n'oubliez pas : le motif n'est pas le but !

20voto

Leopold Cimrman Points 411

J’ajouterais que le livre de Modèles de conception de la « bande des quatre » est une bible pour tous ceux qui sont sérieusement intéressé à des modèles de conception.

14voto

Lars A. Brekken Points 4626

Mon conseil:

Lu beaucoup de choses sur les modèles à partir de différentes sources.

En essayant de forcer autant de modèles que possible dans tout le code que vous écrivez que ce point ne va pas donner de bons résultats. Au lieu de cela, laissez l'information reste à l'intérieur de votre cerveau pendant un certain temps (lire: les mois).

Soudain, vous vous trouverez tomber sur un problème ou un morceau de code et vous pourrez me souviens vaguement que vous avez vu quelque chose qui pourrait fonctionner comme une solution à ce problème particulier. C'est maintenant le temps de regarder les détails sur le modèle que vous pensez et essayer de les appliquer.

C'est ce qui a fonctionné pour moi, de toute façon.

8voto

Jan Gressmann Points 2758

Bruce Eckel a publié un livre sur les modèles de conception , bien que ce soit en Java, c'est comme tous ses livres extraordinaires. Et le meilleur, c'est qu'ils sont gratuits!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X