Génie logiciel

Q & A pour les professionnels, les universitaires et les étudiants travaillant dans le cycle de vie du développement de systèmes


16
Avons-nous la responsabilité d'améliorer l'ancien code?
Je cherchais un vieux code que j'ai écrit. Cela fonctionne, mais ce n'est pas un bon code. J'en sais plus maintenant qu'à l'époque, afin de pouvoir l'améliorer. Ce n'est pas un projet en cours, mais un code de production actuel, fonctionnel. Avons-nous la responsabilité de revenir en arrière et d'améliorer …



11
Clarifier le principe de responsabilité unique
Le principe de responsabilité unique stipule qu'une classe doit faire une et une seule chose. Certains cas sont assez clairs. D'autres, cependant, sont difficiles car ce qui ressemble à «une chose» vu à un niveau d'abstraction donné peut être multiple si on le regarde à un niveau inférieur. Je crains …


17
Pourquoi Lisp est-il utile? [fermé]
Lisp est évidemment un avantage pour l' IA , mais il ne me semble pas que Lisp soit plus rapide que Java, C # ou même C. Je ne suis pas un maître de Lisp, mais je trouve extrêmement difficile de comprendre l'avantage. on aurait à écrire un logiciel de …
64 lisp 


19
Comment se fait-il que les compilateurs soient si fiables?
Nous utilisons quotidiennement les compilateurs comme si leur exactitude était acquise, mais les compilateurs sont aussi des programmes et peuvent potentiellement contenir des bogues. Je me suis toujours interrogé sur cette robustesse infaillible. Avez-vous déjà rencontré un bogue dans le compilateur lui-même? Qu'est-ce que c'était et comment avez-vous réalisé que …


4
La programmation fonctionnelle en multithreading est-elle plus rapide parce que j'écris des choses différemment ou parce que les choses sont compilées différemment?
Je plonge dans le monde de la programmation fonctionnelle et je continue de lire que les langages fonctionnels sont meilleurs pour les programmes multithreading / multicœurs. Je comprends comment les langages fonctionnels font beaucoup de choses différemment, comme récursion , nombres aléatoires , etc , mais je ne peux pas …

11
Une grande expression booléenne est-elle plus lisible que la même expression décomposée en méthodes de prédicats? [fermé]
Qu'est-ce qui est plus facile à comprendre, une grosse déclaration booléenne (assez complexe) ou la même déclaration divisée en méthodes de prédicats (beaucoup de code supplémentaire à lire)? Option 1, la grande expression booléenne: private static bool ContextMatchesProp(CurrentSearchContext context, TValToMatch propVal) { return propVal.PropertyId == context.Definition.Id && !repo.ParentId.HasValue || repo.ParentId …
63 c#  readability 

2
Pourquoi les opérateurs au niveau des bits ont-ils une priorité plus basse que les comparaisons?
Quelqu'un pourrait-il expliquer pourquoi, dans la plupart des langages courants (voir la remarque ci-dessous), les opérateurs de comparaison (==,! =, <,>, <=,> =) Ont une priorité plus élevée que les opérateurs binaires (&, |, ^ , ~)? Je ne pense pas avoir jamais rencontré un usage où cette préséance serait …


5
En programmation fonctionnelle, la plupart des structures de données immuables nécessitent-elles davantage d’utilisation de la mémoire?
En programmation fonctionnelle, étant donné que presque toutes les structures de données sont immuables, lorsque l’état doit changer, une nouvelle structure est créée. Est-ce que cela signifie beaucoup plus d'utilisation de la mémoire? Je connais bien le paradigme de la programmation orientée objet, maintenant j'essaie de mieux comprendre le paradigme …

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.