La plupart des langues OO préfixent leurs noms d'interface par un I majuscule, pourquoi Java ne fait-il pas cela? Quelle était la raison pour ne pas suivre cette convention?
Pour démontrer ce que je veux dire, si je voulais avoir une interface utilisateur et une implémentation utilisateur, j'aurais deux choix en Java:
- Classe = utilisateur, interface = interface utilisateur
- Class = UserImpl, Interface = User
Où dans la plupart des langues:
Classe = utilisateur, interface = utilisateur
Maintenant, vous pourriez faire valoir que vous pouvez toujours choisir un nom le plus descriptif pour l'implémentation utilisateur et le problème disparaît, mais Java pousse une approche POJO des choses et la plupart des conteneurs IOC utilisent largement DynamicProxies. Ces deux choses ensemble signifient que vous aurez beaucoup d'interfaces avec une seule implémentation POJO.
Donc, je suppose que ma question se résume à: "Vaut-il la peine de suivre la convention de dénomination d'interface plus large, surtout à la lumière de l'orientation vers laquelle les cadres Java semblent se diriger?"
NetworkInterface
, DialogInterface
, etc.