Olá, não consegui entender o motivo de adicionar "abstract" a classe View e template. Qual a razão e utilidade?
Olá, não consegui entender o motivo de adicionar "abstract" a classe View e template. Qual a razão e utilidade?
Oii, Diego!
Quando você declara uma classe como "abstract" em TypeScript, você tá dizendo que essa classe não pode ser instanciada diretamente. Ou seja, você não pode criar um objeto dessa classe. A razão para isso é que uma classe abstrata tá destinada a servir como uma base para outras classes derivadas.
No caso específico da classe View
, o uso de "abstract" é importante porque a View
define um método template
que não tem implementação na própria classe. A ideia é que qualquer classe que herde de View
deve obrigatoriamente fornecer uma implementação para o método template
. Isso garante que todas as subclasses de View
tenham um comportamento consistente e que o método template
seja sempre implementado.
Por exemplo, se você tem uma classe MensagemView
que herda de View
, você deve implementar o método template
em MensagemView
. Isso evita que você acidentalmente esqueça de definir o template
, o que poderia causar erros em tempo de execução.
E, ao marcar View
como abstrata, você impede que alguém crie uma instância de View
diretamente, o que faria pouco sentido, já que View
por si só não tem um template
definido e, portanto, não seria funcional.
Espero ter ajudado.