Lorsque vous créez une interface, créez-la en fonction du comportement, suivez la norme -able, par ex.Créer une interface pour un objet ou pour une action/un comportement?
interface Comparable
interface Enumerable
interface Listable
interface Talkable
interface Thinkable
Ou basé sur un objet, par ex.
interface Comparator
interface Enumerator
interface List
interface Human
Et pourquoi?
MISE À JOUR
Cette question ne concerne pas la convention de nommage (suffixe ou préfixe able I). Ceci est de l'intention de la conception de l'interface, et l'impact de celui-ci, en termes de: -
- flexibilité
- complexité/simplicité
- maintenabilité
Par exemple, si je dois pour mettre en œuvre des fonctionnalités différentes, en faisant -able façon, je peux déclarer ma classe comme
public class Man implements Talkable, Thinkable, Laughable
public class Woman implements Talkable, Thinkable, Laughable
D'autre part Par contre, si nous créons interface sur l'objet, nous pouvons l'utiliser comme
public class Man implements Human
public class Woman implements Human
Et nous pouvons également l'utiliser à des fins de polymorphisme.
Human man = new Man();
Les normes pour cela sont en grande partie spécifiques à la langue, et parfois subjective pour le programmeur et les normes d'une organisation. –