Oi Lucas, tudo bem?
A ideia de colocar o FormControl
dentro de um serviço, como o FormBuscaService
no exemplo da aula, é para separar as responsabilidades e facilitar a reutilização do código. Isso é um princípio de design de software chamado "Separation of Concerns" (Separação de Preocupações).
No caso do Angular, isso se traduz em separar a lógica de negócios (como a manipulação de formulários) dos componentes, que devem se concentrar mais na apresentação e na interação do usuário.
Isso não significa que seja uma má prática ter o FormControl
dentro do próprio componente. No entanto, se você tem um formulário que será usado em vários lugares, ou se a lógica do formulário começar a ficar complexa, pode ser uma boa ideia mover essa lógica para um serviço.
Por exemplo, se você tiver um formulário de busca que será usado em várias partes do seu aplicativo, faz sentido ter um FormBuscaService
que possa ser injetado onde quer que você precise desse formulário. Isso evita a duplicação de código e torna o seu aplicativo mais fácil de manter.
No entanto, se o seu formulário é específico para um único componente e não é muito complexo, pode ser mais simples e direto mantê-lo no componente.
Um abraço e bons estudos.