[Article] Evolution de la construction d'objets en Java, du Telescoping Constructor au Builder Pattern
Bonsoir à tous,
Je vous propose un article sur l'évolution de la construction d'objets en Java.
Où comment passer de l'antipattern Telescoping Constructor au Builder Pattern en prenant le temps de survoler les interfaces fluides (Fluent Interfaces).
Vos retours (positifs comme négatifs) sont importants; ils me permettent d'améliorer l'article et d'enrichir la réflexion qui l'entoure. N'hésitez donc surtout pas à poster.
L'article se trouve à l'URL suivante: http://cheliou.developpez.com/tutori...ject-building/.
Bien à vous,
Clément
classe de premier niveau déclarée static
Bonjour,
l'article est très plaisant à lire. Cependant au chapitre III-C-2, une classe est définie static
à plusieurs reprises :
Citation:
public static class PersonBuilder { ...
C'est peut-être possible dans d'autres langages que Java.
Bonne journée,
Laurent
Pourquoi le modificateur d'accès protected dans ParentBuilder ?
Bonjour,
je continuais la lecture de cet article fort intéressant quand je me suis demandé pourquoi, au chapitre IV-A,
le modificateur d'accès protected est utilisé dans ParentBuilder.
protected est utilisé pour le constructeur et également pour les accesseurs getFieldA() et getFieldB().
Vu qu'il n'y a pas de relation d'héritage entre ChildBuilder et ParentBuilder, ni entre une autre classe et ParentBuilder,
on peut penser que les modificateurs d'accès de getFieldA() et getFieldB() devraient être les mêmes que
ceux de withFieldA() et withFieldB(), c'est-à-dire public (au cas où ChildBuilder ne serait pas dans le même
package que ParentBuilder).
Quand au constructeur je me suis dit qu'il pourrait très bien rester private, comme pour le PersonBuilder de la
section III-2-C, vu que l'instanciation de ParentBuilder est faite par la méthode public static createDefaultParent()
de la classe ParentBuilder.
Bonne journée,
Laurent