Quel objet devrait ressembler?

voix
1

Je discute en permanence la meilleure façon de créer mes cours.

Par là, je veux dire pourquoi ne pas nous créons toujours une classe qui implémente INotifyPropertyChanged et IDataErrorInfo pour que « si » nous voulons nous lier directement dans nos formes, et pourquoi ne pas nous les décorer toujours avec les attributs de sorte que si nous voulons nous pouvons utiliser la classe dans WCF?

Je veux dire en dehors du code supplémentaire évident, et plus de tests habitude cela nous donne une meilleure flexibilité?

J'entends toujours - « créer une fois » et utiliser « partout » mais je suis en phase avec « YAGNI » (vous aint en avoir besoin).

Je suppose que ma question ici est a l'idée d'une « classe affaires » que peut être réutilisé mort? et disons-nous « créer les plus élémentaires » qui fonctionne pour l'instant, et de tirer parti quand nécessaire?

R

Créé 27/08/2009 à 06:13
source utilisateur
Dans d'autres langues...                            


4 réponses

voix
1

Je pense qu'il est généralement préférable de faire vos classes plus ciblée à un petit ensemble de tâches spécifiques, plutôt que de créer des objets qui peuvent être utilisés dans une variété de scénarios. Par exemple, vous pourriez avoir des objets de la couche de données qui ont tous les attributs spécifiques de la couche de données / comportements, objets de la couche de présentation avec tous les trucs de la couche de présentation et des objets de la couche de service, etc.

Si vous faites vos classes trop « tout-puissant » vous finirez par créer beaucoup de dépendances dans vos différentes couches qui le rendent à changer beaucoup plus difficile à l'avenir. Faites une recherche Google pour « principe de responsabilité unique » - il est l'un des principes « solide » de OO.

Créé 27/08/2009 à 06:18
source utilisateur

voix
0

Je crée beaucoup, beaucoup de classes qui sont très éloignées de l'interface utilisateur. La mise en œuvre de ces interfaces chaque fois serait un Burder lourd, avec un minimum de récompense.

Créé 27/08/2009 à 06:20
source utilisateur

voix
0

Tout d'abord, les programmeurs sont paresseux, notre modivation est d'automatiser les tâches ennuyeuses. (Non, je ne suis pas négatif) Nous écrivons généralement des classes pour servir un but particulier qui dicates quel type de bits supplémentaires y entrer. Vous posez la question fondamentale que la programmation orientée aspect tente de répondre. Est-ce ma classe un serivce? Est ma classe un conteneur de données? Est ma classe observable? Ce sont les aspects de votre classe peut être toutes ces choses en fonction de l'utilisation. Ou il ne peut jamais être l'un d'entre eux.

Créé 27/08/2009 à 06:25
source utilisateur

voix
0

Si vous le faites, où puisez-vous la ligne? Est-ce que vous allez faire toutes vos classes exceptions parce qu'un jour vous pourriez vouloir les jeter quelque part? Est-ce que vous allez les faire tous sérialisable?

Une autre façon que vous pouvez penser à ce sujet est que les concepteurs de langage déjà pris cette décision pour vous - toutes les classes héritent automatiquement de l'objet, qui contient tout a besoin d'objets « généraux ».

Enfin, ne confondez pas la réutilisation de code avec l'écriture de code inutile. En général, vous ne devez écrire le code que vous avez besoin en ce moment, mais le concevoir pour qu'il soit facile à utiliser / changement dans l'avenir.

Créé 27/08/2009 à 06:27
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more