Questions marquées «design»

76
Devrions-nous concevoir des programmes pour se tuer au hasard? [fermé]

En un mot, devrions-nous inclure la mort dans nos programmes, processus et threads à un niveau bas, pour le bien du système global? Les échecs se produisent. Les processus meurent. Nous planifions en cas de catastrophe et en récupérons parfois. Mais nous concevons et mettons rarement en œuvre un...

76
Pourquoi le dépassement arithmétique est-il ignoré?

Avez-vous déjà essayé de résumer tous les nombres de 1 à 2 000 000 dans votre langage de programmation préféré? Le résultat est facile à calculer manuellement: 2 000 001 000 000, soit 900 fois la valeur maximale d’un nombre entier non signé de 32 bits. C # imprime -1453759936- une valeur négative!...

73
Conception d'une API REST par URI vs chaîne de requête

Disons que j'ai trois ressources qui sont liées comme suit: Grandparent (collection) -> Parent (collection) -> and Child (collection) Ce qui précède décrit la relation entre ces ressources de la manière suivante: Chaque grand-parent peut s’associer à un ou plusieurs parents. Chaque parent...

73
Devrais-je suivre le chemin normal ou échouer tôt?

La citation suivante est extraite du livre Code Complete : "Mettez le cas normal après le ifplutôt que après le else" Ce qui signifie que des exceptions / déviations par rapport au chemin standard doivent être mises en place else. Mais le programmeur pragmatique nous apprend à "planter tôt" (p....

72
SQL: chaîne vide vs valeur NULL

Je sais que ce sujet est un peu controversé et que de nombreux articles / opinions circulent sur Internet. Malheureusement, la plupart d'entre eux supposent que la personne ne sait pas quelle est la différence entre NULL et une chaîne vide. Donc, ils racontent des histoires sur des résultats...

72
Pourquoi utiliser des classes partielles?

À mon sens, le partialmot-clé ne fait que permettre à une classe d'être divisée en plusieurs fichiers source. Y a-t-il une raison de faire cela autre que pour l'organisation du code? Je l'ai vu utilisé pour cela dans les classes d'interface utilisateur générées. Cela semble une mauvaise raison de...

67
Comment certaines communautés linguistiques (par exemple, Ruby et Python) ont-elles pu empêcher la fragmentation alors que d'autres (par exemple, Lisp ou ML) ne l'ont pas été?

Le terme "Lisp" (ou "Lisp-like") est un parapluie pour beaucoup de langues différentes, telles que Common Lisp, Scheme et Arc. La fragmentation est similaire dans les autres communautés linguistiques, comme dans ML. Cependant, Ruby et Python ont tous les deux réussi à éviter ce destin, où...