Nous développons un nouveau projet qui sera déployé sur un grand nombre de sites clients. Le projet contient une interface graphique Web comme l'un de ses «points d'accès». La vitesse de l'interface Web est une priorité pour ce projet, juste après la sécurité. Dans le passé, nous avons toujours créé …
Dans le passé, j'ai généralement effectué la majeure partie de ma manipulation d'un objet dans la méthode principale en cours de création / mise à jour, mais je me suis retrouvé à adopter une approche différente récemment, et je suis curieux de savoir si c'est une mauvaise pratique. Voici un …
Je me vois utiliser de plus en plus de types immuables lorsque les instances de la classe ne devraient pas être modifiées . Il nécessite plus de travail (voir l'exemple ci-dessous), mais facilite l'utilisation des types dans un environnement multithread. Dans le même temps, je vois rarement des types immuables …
Le contexte J'ai utilisé avec une hiérarchie d'objets (une arborescence d'expression) un modèle de visiteur "pseudo" (pseudo, car il n'utilise pas la double répartition): public interface MyInterface { void Accept(SomeClass operationClass); } public class MyImpl : MyInterface { public void Accept(SomeClass operationClass) { operationClass.DoSomething(); operationClass.DoSomethingElse(); // ... and so on …
J'ai donc créé une couche d'accès aux données via TDD et j'ai abordé une certaine préoccupation. Je préfère ne pas m'engager dans la mauvaise voie, alors j'ai pensé que je vous demanderais de voir si mes pensées étaient conformes à une architecture propre. Les méthodes de ma couche d'accès aux …
Avec l'aide d'AOP, je peux supprimer le code de journalisation de ma logique métier. Mais je pense qu'il ne peut être utilisé que pour enregistrer des choses simples (c'est-à-dire l'entrée / la sortie de la méthode d'enregistrement et les valeurs des paramètres). Cependant, que se passe-t-il si je dois enregistrer …
Je suis ingénieur électricien et je ne sais pas ce que je fais. Veuillez enregistrer les futurs responsables de mon code. Récemment, j'ai travaillé sur un certain nombre de petits programmes (en C #) dont la fonctionnalité est logiquement "procédurale". Par exemple, l'un d'eux est un programme qui collecte des …
Beaucoup de tutoriels sur DDD que j'ai étudiés couvrent principalement la théorie. Ils ont tous des exemples de code rudimentaires (Pluralsight et similaires). Sur le Web, quelques personnes tentent également de créer des didacticiels couvrant DDD avec EF. Si vous commencez à les étudier brièvement - vous remarquez rapidement qu'ils …
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 …
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 …
Java et .NET ont de merveilleux récupérateurs qui gèrent la mémoire pour vous et des modèles pratiques pour libérer rapidement des objets externes ( Closeable, IDisposable), mais seulement s'ils appartiennent à un seul objet. Dans certains systèmes, une ressource peut avoir besoin d'être consommée indépendamment par deux composants et d'être …
Je suis un développeur C ++ qui utilise depuis le modèle MVC pour concevoir des interfaces graphiques. Récemment, je voulais revenir en C #, et j'ai installé une application Windows Forms, mais maintenant je suis un peu perdu sur la façon de le pousser vers une structure compatible MVC. Ce …
Disons que nous avons l'interface suivante - interface IDatabase { string ConnectionString{get;set;} void ExecuteNoQuery(string sql); void ExecuteNoQuery(string[] sql); //Various other methods all requiring ConnectionString to be set } La condition préalable est que ConnectionString doit être défini / initialisé avant que l'une des méthodes puisse être exécutée. Cette condition préalable …
Dans notre logique métier, nous avons parfois des méthodes définies quelque chose comme ceci: User.ResetCourse(Course courseToReset) Le problème est que l'utilisateur et le cours sont des objets proxy Entity Framework. Cela signifie que lorsque nous atteignons les propriétés de navigation sur User ou Course, cela peut causer un énorme succès …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.