Exemple # 1: J'ai une vue affichée dans mon application MVVM (utilisons Silverlight pour les besoins de la discussion) et je clique sur un bouton qui devrait m'amener à une nouvelle page. Exemple # 2: Cette même vue possède un autre bouton qui, lorsque vous cliquez dessus, devrait ouvrir une …
Je travaille actuellement sur un système où il y a des utilisateurs, et chaque utilisateur a un ou plusieurs rôles. Est-ce une bonne pratique d'utiliser les valeurs List of Enum sur User? Je ne peux penser à rien de mieux, mais cela ne me semble pas très bien. enum Role{ …
Je fais de la programmation Web depuis longtemps maintenant, et quelque part, je ne sais plus pourquoi nous faisons ce que nous faisons aujourd'hui (ou comment en sommes-nous arrivés à faire les choses de cette façon)? J'ai commencé avec le développement Web ASP de base et très tôt, la logique …
Un de mes amis travaille pour une petite entreprise sur un projet que chaque développeur détesterait: il est poussé à publier le plus rapidement possible, il est le seul qui semble se soucier de la dette technique, le client n'a pas de formation technique, etc. Il m'a raconté une histoire …
Dans la programmation, ce qu’on appelle le principe de moindre surprise? Comment ce concept est-il lié à la conception de bonnes API? Est-ce quelque chose qui ne s'applique qu'à la programmation orientée objet ou est-ce que cela imprègne également d'autres techniques de programmation? Est-ce lié au principe de "faire une …
Je prends un cours de conception de logiciels où je devrais choisir un logiciel open source à analyser du point de vue de la conception de logiciels. Ce doit être un gros projet: pas moins de 100 000 lignes de code. J'aimerais vraiment choisir un logiciel qui est très bien …
J'ai toujours reconnu l'importance d'utiliser des modèles de conception. Je suis curieux de savoir comment les autres développeurs choisissent le plus approprié. Utilisez-vous une série de caractéristiques (comme un organigramme) pour vous aider à décider? Par exemple: Si les objets sont liés, mais que nous ne voulons pas spécifier de …
À partir des modèles de conception "Gang of Four", il y a la méthode Factory: class Factory(product) case product when a new A when b new B when c new C end new Factory(a) Pourquoi est - ce plus utile que d' avoir trois classes, a, bet cet les appeler …
Le modèle "Builder" est-il limité à la lutte contre l'anti-modèle "constructeur télescopique", ou peut-on dire qu'il aborde également le problème plus général de la création compliquée d'objets immuables? La StringBuilderclasse a le mot «constructeur» dans son nom, mais cela n'a rien à voir avec les constructeurs télescopiques, cela nous aide …
J'ai vu de nombreuses implémentations du modèle Builder (principalement en Java). Tous ont une classe d'entité (disons une Personclasse) et une classe de constructeur PersonBuilder. Le générateur "empile" une variété de champs et renvoie un new Personavec les arguments passés. Pourquoi avons-nous explicitement besoin d'une classe de générateur, au lieu …
Quelle est la pratique généralement acceptée entre ces deux cas: function insertIntoDatabase(Account account, Otherthing thing) { database.insertMethod(account.getId(), thing.getId(), thing.getSomeValue()); } ou function insertIntoDatabase(long accountId, long thingId, double someValue) { database.insertMethod(accountId, thingId, someValue); } En d'autres termes, est-il généralement préférable de faire circuler des objets entiers ou simplement les champs dont …
J'ai un morceau de code où j'itère une carte jusqu'à ce qu'une certaine condition soit remplie et ensuite j'utilise cette condition pour faire plus de choses. Exemple: Map<BigInteger, List<String>> map = handler.getMap(); if(map != null && !map.isEmpty()) { for (Map.Entry<BigInteger, List<String>> entry : map.entrySet()) { fillUpList(); if(list.size() > limit) { …
J'ai lu une question connexe. Existe-t-il des modèles de conception inutiles dans les langages dynamiques comme Python? et je me suis souvenu de cette citation sur Wikiquote.org La chose merveilleuse à propos de la frappe dynamique est qu'elle vous permet d'exprimer tout ce qui est calculable. Et les systèmes de …
Je suis curieux de savoir quels sont les inconvénients de l'utilisation du modèle ActiveRecord pour l'accès aux données / les objets métier. La seule à laquelle je peux penser du haut de ma tête est qu'elle viole le principe de responsabilité unique, mais le modèle de RA est assez commun …
Mon collègue et moi avons des opinions différentes sur la relation entre les classes de base et les interfaces. Je pense qu'une classe ne devrait pas implémenter une interface à moins que cette classe puisse être utilisée lorsqu'une implémentation de l'interface est requise. En d'autres termes, j'aime voir du code …
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.