Les interfaces publiques sont un contrat formel entre des modules ou des systèmes du système. À cause de cela, il est logique de les isoler du reste du code, pour les faire ressortir. Par exemple, dans un système sur lequel j'ai travaillé, toutes les interfaces publiques entre le serveur et les composants clients du système ont été placées dans un module système spécial (appelé, sans surprise, "api"). Cela a un certain nombre d'effets souhaitables, parmi lesquels ceux-ci: - sémantiquement, vous savez où regarder si vous avez besoin tout type d'information sur la façon dont la communication devrait avoir lieu - vous pouvez la version du module api séparément, ce qui est particulièrement utile lorsque vous ne veut pas de cible mobile, c'est-à-dire que vous signez un contrat pour délivrer une application qui prendra en charge "l'api v.1.1" plutôt que de jouer constamment pendant que quelqu'un d'autre change d'interface et vous oblige à adapter votre côté. ne signifie pas que vous ne devriez pas les organiser plus en sous-ensembles pour distinguer ce qu'ils sont pour. :)
En résumé, vous faites la bonne chose en séparant les interfaces du reste de la base de code, bien qu'en fonction de vos besoins spécifiques, vous fassiez bien d'aller plus loin et d'isoler les interfaces dans un module de système séparé.