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


5
Quelle est l'incidence des appels de fonction sur les performances?
L'extraction de fonctionnalités dans des méthodes ou des fonctions est indispensable pour la modularité, la lisibilité et l'interopérabilité du code, en particulier dans la POO. Mais cela signifie que davantage d'appels de fonctions seront effectués. Comment la division de notre code en méthodes ou fonctions affecte-t-elle réellement les performances dans …

2
Logger.getLogger (MyClass.class) est-il le meilleur moyen d'initialiser les enregistreurs log4j?
Ce didacticiel Mkyong propose d'intialiser les enregistreurs de cette façon: @Controller public class WelcomeController { private static final Logger logger = Logger.getLogger(WelcomeController.class); // etc } Maintenant, probablement toutes les autres classes que vous utilisez, qui ont un enregistreur initialiseront leurs enregistreurs de la même manière. Ma question est - est-ce …
13 java  logging 


8
Quelle est la différence entre un flux et une file d'attente?
Quelle est la différence entre un flux et une file d'attente? Ils ont tous deux le concept d'un ensemble ordonné d'éléments, mais ont tendance à avoir des implémentations différentes et un vocabulaire différent de `` insérer '' / `` extraire '' (flux) par rapport à `` enqueue '' / `` …

2
Expiration du cache aléatoire
J'ai expérimenté des temps d'expiration de cache aléatoires pour éviter les situations où une demande individuelle force plusieurs choses à mettre à jour à la fois. Par exemple, une page Web peut comprendre cinq composants différents. Si chacun est réglé pour expirer dans 30 minutes, l'utilisateur aura un long temps …

1
Différence entre 'aud' et 'iss' en jwt
Je veux implémenter un service d'authentification plus robuste et jwtc'est une grande partie de ce que je veux faire, et je comprends comment écrire le code, mais j'ai un peu de mal à comprendre la différence entre le réservé isset les audrevendications. Je comprends que l'un définit le serveur qui …



4
Choix des noms pour les tests d'intégration
Avec les tests unitaires, le domaine est assez petit, donc c'est facile. J'ai utilisé le methodName_conditions_result()schéma d'Osherove et je l'ai trouvé très clair. Mais avec les tests d'intégration, j'ai l'impression que cela ferait un nom très long, et que dois-je mettre en place methodName? Comment nommer les classes de test …

4
Instanciation d'objets nuls avec un opérateur à coalescence nulle
Considérez le scénario typique suivant: if(myObject == null) { myObject = new myClass(); } Je me demande ce que l'on pense du remplacement suivant en utilisant l'opérateur de coalescence nulle: myObject = myObject ?? new myClass(); Je ne sais pas si je devrais utiliser le deuxième formulaire. Cela semble être …
12 c#  operators 

4
Pourquoi sizeof est-il appelé un opérateur au moment de la compilation?
À l'origine, cela fait partie d' une autre question. Pourquoi est-on sizeofappelé un opérateur de compilation? N'est-ce pas réellement un opérateur d'exécution? Et s'il s'agit bien d'un opérateur au moment de la compilation, comment peut-il aider à produire du code portable qui s'exécute de la même manière sur différents ordinateurs? …
12 c++ 


6
Valeurs par défaut - sont-elles bonnes ou mauvaises?
La question sur les valeurs par défaut en général - valeurs de fonction de retour par défaut, valeurs de paramètres par défaut, logique par défaut pour quand quelque chose manque, logique par défaut pour gérer les exceptions, logique par défaut pour gérer les conditions de bord, etc. Pendant longtemps, j'ai …

11
Que signifie «lisible par l'homme»? Est-ce un abus de langage?
Deux exemples me viennent à l'esprit: L'une des raisons pour lesquelles les programmeurs .Net sont encouragés à utiliser des fichiers .config au lieu du registre Windows est que les fichiers .config sont XML et donc lisibles par l'homme. De même, JSON est parfois considéré comme lisible par l'homme par rapport …

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.