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.