Choisir entre un service ou un composant

Vous vous demandez peut-être parfois si vous devez mettre votre code dans un service ou un composant. Les règles qui suivent peuvent vous aider à vous décider.

Mettre votre code dans un service :

  • Si c’est du code réutilisable à plusieurs endroits de l’application. Par exemple : le code permettant d’accéder à la base de données.
  • Si c’est du code complexe. Par exemple : un calcul de mensualités de crédit bancaire.
  • Si le code n’est PAS directement lié à l’affichage (voir ci-dessous).

Mettre votre code dans un composant :

  • Si c’est du code directement lié à l’affichage. Par exemple : le code qui permet de réagir à une action de l’utilisateur. Ou le code qui permet d’alimenter une variable affichée dans le template du composant. Attention, le code qui récupère et prépare les données doit plutôt se trouver dans un service, même s’il est indirectement lié à l’affichage. En effet, vous êtes susceptible de réutiliser ce code dans plusieurs parties de l’application.
  • Si c’est du code qui sert à initialiser l’état du composant.

Pour résumer en simplifiant un peu, on pourrait dire que les services représentent la couche “métier” et les composants la couche “affichage”.

Enfin, gardez en tête qu’un composant peut facilement utiliser un service grâce à l’injection de dépendance.