Dans certains codes que je suis en train de réviser, je vois des choses qui sont l'équivalent moral de ce qui suit: public class Foo { private Bar bar; public MethodA() { bar = new Bar(); bar.A(); bar = null; } public MethodB() { bar = new Bar(); bar.B(); bar …
Le downcasting signifie la conversion d'une classe de base (ou interface) vers une classe sous-classe ou feuille. Un exemple de downcast pourrait être si vous lancez à partir System.Objectd'un autre type. Le downcasting est impopulaire, peut-être une odeur de code: la doctrine orientée objet consiste à préférer, par exemple, la …
Quelle est la différence entre les deux méthodes UpdateSubject ci-dessous? Je me suis senti mieux d'utiliser des méthodes statiques si vous voulez simplement opérer sur les entités. Dans quelles situations dois-je aller avec des méthodes non statiques? public class Subject { public int Id {get; set;} public string Name { …
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 …
Aujourd'hui, je me suis disputé avec quelqu'un. J'expliquais les avantages d'avoir un modèle de domaine riche par opposition à un modèle de domaine anémique. Et j'ai démontré mon point avec un cours simple ressemblant à ça: public class Employee { public Employee(string firstName, string lastName) { FirstName = firstName; LastName …
Je suis toujours élève au lycée (entrée en 10e année) et je n'ai pas encore suivi de cours d'informatique à l'école. Tout ce que j'ai fait jusqu'à présent passe par des livres. Ces livres m'ont enseigné des concepts tels que l'héritage, mais en quoi le fractionnement d'un programme en plusieurs …
L'idée principale derrière la POO est d'unifier les données et le comportement dans une seule entité - l'objet. En programmation procédurale, il existe des données et des algorithmes distincts modifiant les données. Dans le modèle Modèle-Vue-Contrôleur, les données et la logique / algorithmes sont placés dans des entités distinctes, le …
J'ai eu une discussion très stimulante et intéressante avec un collègue sur ORM et ses avantages et inconvénients. À mon avis, un ORM n'est utile que dans les cas les plus rares. Tout du moins selon moi. Mais je ne veux pas énumérer mes propres arguments pour le moment. Je …
Résumé du problème: En bref, j'ai hérité d'une base de code et d'une équipe de développement que je ne suis pas autorisé à remplacer et l'utilisation de God Objects est un gros problème. Pour aller de l'avant, je veux que nous reformulions les choses, mais les équipes qui veulent tout …
La réutilisation du code est peut-être la plus grande promesse d'utiliser un paradigme orienté objet. Certains contestent que cela a été réalisé. Pourquoi a-t-il (non) été atteint? Est-ce que la réutilisation de code telle que définie par la POO rend les projets plus productifs? Ou plus gérable? Ou plus facile …
Je termine juste ma maîtrise (en informatique) et postule à des emplois. J'ai remarqué que de nombreuses entreprises demandent spécifiquement une compréhension de l'orientation des objets. Les questions d'entretien les plus populaires portent sur l'héritage, le polymorphisme, les accesseurs, etc. Est-ce que OO est vraiment crucial? J'ai même eu une …
C ++ a un héritage multiple simple, de nombreuses conceptions de langage l'interdisent comme dangereux. Mais certaines langues comme Ruby et PHP utilisent une syntaxe étrange pour faire la même chose et appellent cela mixins ou traits. J'ai souvent entendu dire que les mixins / traits sont plus difficiles à …
Là où je travaille, je vois beaucoup de classes qui font des choses comme celle-ci: public class ClassThatCallsItsOwnGettersAndSetters { private String field; public String getField() { return field; } public void setField(String field) { this.field = field; } public void methodWithLogic() { setField("value"); //do stuff String localField = getField(); //do …
Je l'ai souvent vue répéter que la programmation orientée objet est basée sur la modélisation du monde réel, mais l'est-il? Il me semble que cela n’est vrai pour rien en dehors de la couche affaires. Mes classes d’interface graphique / d’accès aux données ne modélisent rien dans le monde réel. …
Quel est le but des conteneurs IOC? Les raisons combinées peuvent être simplifiées comme suit: Lorsque vous utilisez les principes de développement OOP / SOLID, l’injection de dépendance est compliquée. Soit vous avez les points d’entrée de premier niveau qui gèrent les dépendances pour plusieurs niveaux en dessous d’eux-mêmes et …
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.