Il y a déjà une question assez utile dans ce sens (" Motifs de conception non-POO? "), Mais je suis plus curieux de savoir un point de vue transitionnel pour quelqu'un qui vient de commencer avec des langages dynamiques et faiblement typés. C'est-à-dire: disons que je programme en C ++, …
J'ai commencé à étudier les modèles de conception récemment, et une chose que je code conviendrait parfaitement au modèle de stratégie, à l'exception d'une petite différence. Essentiellement, certains (mais pas tous) de mes algorithmes ont besoin d'un ou deux paramètres supplémentaires qui leur sont transmis. Je vais donc devoir leur …
Quels sont les avantages et les inconvénients d'avoir des méthodes de création d'objets statiques par rapport aux constructeurs? class Foo { private Foo(object arg) { } public static Foo Create(object arg) { if (!ValidateParam(arg)) { return null; } return new Foo(arg); } } Peu de choses auxquelles je peux penser: …
Nous sommes dépendants d'un service tiers qui expose une interface gigantesque dont nous n'avons besoin que de 3 méthodes. De plus, l'interface change fréquemment ... J'ai décidé d'envelopper l'interface dans une classe de notre projet et d'exposer uniquement les méthodes dont nous avons besoin. Mais je ne sais pas comment …
Scénario: Pile: Java, Spring, Hibernate. Modèle: application client-serveur. Modèle: Model-View-Controller (MVC). Les classes Service Layer ont trois comportements: Certains services ont la règle métier dans les méthodes et délèguent la persistance à l'application. Comme: EntityManager.save (entité); Certains services appellent simplement une fonction de base de données (en passant des paramètres) …
Dans de nombreux articles sur le Web, les termes Inversion de contrôle et Principe d'inversion de dépendance semblent être mélangés et utilisés comme synonymes (une confusion supplémentaire est renforcée par les outils appelés "DI-Containers" et "IoC-Containers"). Un article de Wikipedia fait un bon travail en essayant d'expliquer que l'IoC n'est …
J'ai une classe: Aqui est un composé d'un certain nombre de classes plus petites, B, Cet D. B, CEt Dmettre en œuvre des interfaces IB, ICet IDrespectivement. Depuis Aprend en charge toutes les fonctionnalités de B, Cet D, Aimplémente IB, ICainsi IDque, mais cela conduit malheureusement à beaucoup de réacheminement …
Lors de la planification de l'architecture d'une application Web MVC à moyenne et grande échelle, comment implémentez-vous les couches pour qu'elles soient aussi découplées que possible et faciles à tester? (suivez essentiellement les meilleures pratiques) Supposons que j'utilise d'abord le code comme accès aux données. J'ai du mal à définir …
Quelles sont simplement les techniques pratiques que les gens utilisent pour vérifier si une classe viole le principe de responsabilité unique? Je sais qu'une classe ne devrait avoir qu'une seule raison de changer, mais cette phrase manque quelque peu d'un moyen pratique de vraiment mettre cela en œuvre. La seule …
Tout d'abord, je suis conscient que cette question est liée au sujet du développement de jeux mais j'ai décidé de la poser ici car elle se résume vraiment à un problème de génie logiciel plus général. Au cours du mois dernier, j'ai beaucoup lu sur Entity-Component-Systems et maintenant je suis …
Je travaille actuellement en tant que développeur solo sur mon projet actuel. J'ai hérité du projet d'un autre développeur, qui a depuis quitté l'entreprise. Il s'agit d'une application Web de style modèle-vue-contrôleur en C #. Il utilise Entity Framework pour le mappage relationnel des objets. Et il existe deux ensembles …
Je travaille sur une application dont un module effectue successivement les opérations financières suivantes: Lorsqu'un utilisateur demande qu'un certain montant soit transféré sur son compte bancaire: vérifier si une transaction peut avoir lieu maintenant? (la transaction ne peut être effectuée que pendant une certaine période) vérifier si l'utilisateur a demandé …
Considérons un module qui est responsable de l'analyse des fichiers de tout type donné. Je pense utiliser le modèle de stratégie pour résoudre ce problème comme je l'ai déjà expliqué ici . Veuillez vous référer au message lié avant de poursuivre avec cette question. Considérez la classe B qui a …
Je lis Coders at Work et Brendan Eich cite un article de Norvig, quand il était à Harlequin, "sur la façon dont les modèles de conception ne sont vraiment que des défauts dans votre langage de programmation." Quelqu'un peut-il fournir le lien vers ce document?
Par exemple: var duckBehaviors = new Duckbehavior(); duckBehaviors.quackBehavior = new Quack(); duckBehaviors.flyBehavior = new FlyWithWings(); Duck mallardDuck = new Duck(DuckTypes.MallardDuck, duckBehaviors) Comme la classe Duck contient tous les comportements (abstraits), la création d'une nouvelle classe MallardDuck(qui s'étend Duck) ne semble pas nécessaire. Référence: Head First Design Pattern, Chapitre 1.
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.