Questions marquées «design»

Questions sur la résolution de problèmes et la planification d'une solution via la conception de logiciels.

3
Comment résoudre la dépendance circulaire?
J'ai trois classes qui sont circulaires dépendantes les unes des autres: TestExecuter exécute les demandes de TestScenario et enregistre un fichier de rapport à l'aide de la classe ReportGenerator. Alors: TestExecuter dépend de ReportGenerator pour générer le rapport ReportGenerator dépend de TestScenario et des paramètres définis par TestExecuter. TestScenario dépend …


3
Quel est le principe du moindre étonnement?
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 …


18
Un développeur doit-il s'opposer aux fonctionnalités inutiles ou nuisibles?
Quelle est la bonne attitude des développeurs lorsqu'ils discutent de nouvelles fonctionnalités, et notamment des fonctionnalités non critiques / discutables? Imaginons que vous développiez une sorte de langage de type Java, et le patron dit: "Nous avons besoin de pointeurs pour que les développeurs puissent jouer directement avec la mémoire …
32 design 



10
Est-il raisonnable de supposer que n'importe quelle quantité physique peut être représentée par un entier 64 bits sans débordement ni débordement?
L'algorithme de recherche binaire d'origine dans le JDK utilisait des entiers 32 bits et avait un bogue de débordement si (low + high) > INT_MAX( http://googleresearch.blogspot.com/2006/06/extra-extra-read-all-about-it-nearly.html ) . Si nous réécrivons le même algorithme de recherche binaire à l'aide d'entiers 64 bits (signés), pouvons-nous supposer qu'il low + highne dépassera …

5
Est-il préférable de concevoir de haut en bas ou de bas en haut?
Si je comprends bien, la conception descendante consiste à affiner le concept abstrait de haut niveau en petites pièces concrètes et compréhensibles, jusqu'à ce que le plus petit bloc de construction soit défini. D'un autre côté, le bas vers le haut définit les parties de bas niveau, puis construit progressivement …
31 design  c++  lisp 



4
Y a-t-il une différence entre un composant et un module
J'ai un petit problème avec les termes module et composant. Dans mon esprit, un module sont des classes groupées, qui ne sont accessibles que via une interface bien définie. Ils masquent tous les détails d'implémentation et sont réutilisables. Les modules définissent les modules dont ils dépendent. Quelle est la différence …

9
Concevoir une classe pour prendre des classes entières comme paramètres plutôt que comme propriétés individuelles
Disons, par exemple, que vous avez une application avec une classe largement partagée appelée User. Cette classe expose toutes les informations sur l'utilisateur, son identifiant, son nom, les niveaux d'accès à chaque module, le fuseau horaire, etc. Les données utilisateur sont évidemment largement référencées dans tout le système, mais pour …
30 java  c#  design  solid 


10
Étant donné un troupeau de chevaux, comment puis-je trouver la longueur moyenne de la corne de toutes les licornes?
La question ci-dessus est un exemple abstrait d'un problème commun que je rencontre dans le code hérité, ou plus précisément, des problèmes résultant de tentatives précédentes pour résoudre ce problème. Je peux penser à au moins une méthode de framework .NET qui est destinée à résoudre ce problème, comme la …

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.