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
Si les mots de passe sont stockés hachés, comment un ordinateur pourrait-il savoir que votre mot de passe est similaire au dernier si vous essayez de réinitialiser votre mot de passe?
Si les mots de passe sont stockés hachés, comment un ordinateur pourrait-il savoir que votre mot de passe est similaire au dernier si vous essayez de réinitialiser votre mot de passe? Les deux mots de passe ne seraient-ils pas totalement différents puisqu'un est haché et ne peut pas être inversé?

2
Un système à composants d'entité n'est-il pas terrible pour le découplage / la dissimulation d'informations?
Le titre est intentionnellement hyperbolique et c'est peut-être juste mon inexpérience avec le motif mais voici mon raisonnement: La façon «habituelle» ou sans doute simple d'implémenter des entités est de les implémenter en tant qu'objets et de sous-classer les comportements communs. Cela conduit au problème classique de "est une EvilTreesous-classe …

5
Comment utiliser l'injection de dépendance et éviter le couplage temporel?
Supposons que j'ai le Servicequi reçoit les dépendances via le constructeur mais doit également être initialisé avec des données personnalisées (contexte) avant de pouvoir être utilisé: public interface IService { void Initialize(Context context); void DoSomething(); void DoOtherThing(); } public class Service : IService { private readonly object dependency1; private readonly …

5
Comment déboguez-vous un format binaire?
J'aimerais pouvoir déboguer la construction d'un générateur binaire. En ce moment, je suis en train d'imprimer les données d'entrée sur l'analyseur binaire, puis d'aller en profondeur dans le code et d'imprimer le mappage de l'entrée sur la sortie, puis de prendre le mappage de sortie (entiers) et de l'utiliser pour …
11 debugging  binary 

6
La création d'un document de conception de logiciel après le développement peut-elle se justifier?
Je travaille actuellement sur mon diplôme pour mes études "Développement de logiciels", dans lesquelles je dois développer individuellement des logiciels complexes dans une entreprise externe. Tout cela doit être fait de manière structurée, en créant tous les documents correspondants. Pour ce projet, j'ai choisi de travailler avec les documents standard …



2
L'interface IComparable est-elle obsolète / «nuisible»?
IComparable ne fonctionne que dans un sens Disons que vous avez une Employeeclasse. Dans une vue, vous voulez tout afficher Employeestrié par nom - dans une autre, par adresse. Comment allez-vous y parvenir? Pas avec IComparable, du moins pas de façon idiomatique. IComparable a la logique au mauvais endroit L'interface …
11 c#  sorting  comparison 

2
Test unitaire pour tester la création d'un objet de domaine
J'ai un test unitaire, qui ressemble à ceci: [Test] public void Should_create_person() { Assert.DoesNotThrow(() => new Person(Guid.NewGuid(), new DateTime(1972, 01, 01)); } J'affirme qu'un objet Personne est créé ici, c'est-à-dire que la validation n'échoue pas. Par exemple, si le Guid est nul ou si la date de naissance est antérieure …

3
Comment commencer à utiliser Git pour différentes bases de code de différents serveurs?
Contexte: J'ai récemment hérité d'un ensemble de projets dans mon entreprise et j'essaie de régler certains problèmes fondamentaux avec la façon dont ils ont été traités. À savoir, les développeurs précédents (qui ne font plus partie de la société) n'utilisaient aucune forme de contrôle de source, faisaient peu de documentation …



1
Lors de la création du compte, est-il préférable de générer automatiquement le mot de passe et de l'envoyer à l'utilisateur, ou de laisser l'utilisateur créer son propre mot de passe?
Cette question a été posée aujourd'hui lors d'une discussion avec un collègue sur la page "créer un compte" du site Web sur lequel nous travaillons. L'opinion de mon collègue est que nous devrions rendre l'enregistrement aussi rapide et transparent que possible, donc nous devons simplement demander à l'utilisateur son e-mail …

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.