Executando verificação de segurança...
1

Typescript não é Somente Tipagem!

Para muitos iniciantes no mundo javascript, principalmente para aqueles que ainda não conhece o seu potencial total. Se tem a errônea impressão que javascript é somente usado para manipulação de eventos HTML. O que não está inteiramente errado.

O que acontece é que o javascript com o passar dos anos deixou de ser apenas um script para manipular HTML e principalmente com o a criação do NodeJS começou a ser um excelente recurso de backend.

O Typescript surgiu para ser um superset do Javascript, fornecendo tipagem e um melhor suporte a orientação a objetos. Assim fornecendo recursos com interfaceamento de objetos, que pode ser usado como um tipo para uma variável, ou uma implementação de uma classe.

E é nisto que Typescrip prova que não é somente um recurso de tipagem.

Exemplo de uma interface:

interface Exemplo {
    nome: String;
    telefone: String;
    idade: Number;
}

class Aluno implements Exemplo {
private nome: String;
private telefone: String;
private idade: Number;

public setAluno(nome: String, telefone: String, idade: Number): void {
    this.nome = nome;
    this.telefone = telefone;
    this.idade = idade;
}

public getAluno(): Aluno {
    return {
        nome: this.nome,
        telefone: this.telefone,
        idade: this.idade
    };
}

}


Neste exemplo mostro que quando em Typescript implementamos uma interface em uma classe, obrigatoriamente a classe tem que implementar os objetos da interface. Exceto aqueles que tenham o sinal de interrogação antes dos dois pontos. Vamos supor que o objeto telefone não é obrigatório, fazendo com que não seja obrigatório implementa-lo na classe Aluno.

interface Exemplo {
    nome: String;
    telefone?: String;
    idade: Number;
}

Desta forma telefone é opcional e não obrigatório.

Vemos também que o método setAluno atribui os valores aos atributos da classe, através de passagem de parâmetros. Já no método getAluno ele retorna um objeto Exemplo, de forma que o retorno seja obrigatoriamente do mesmo tipo que a interface Exemplo.

Isto é extremamente importante para a redução de erros, o que auxilia na hora de construir uma aplicação com menos erros e mais confiável.

Isso ainda sem falar das facilidades do padrão SOLID e os demais patterns existentes. Que falarei sobre em outros artigos. Por favor deixem seus pensamentos e dúvidas sobre o assunto isto ajuda muita a criar artigos mais completos e direcionados.

Desde já muito grato, Maicon Parra da Silva.

Carregando publicação patrocinada...
1

Costumo dizer que typescript existe para proteger o dev de si mesmo, hoje em dia não consigo imaginar um projeto grande e importante sem utilizar nenhum tipo de tipagem.

Inclusive uma curiosidade genuína minha é: Como grandes projetos em javascript e python não se tornam caóticos com o passar do tempo

1

Então na verdade se não tomar muito cuidado se tornam extremamente caóticos. Se não me engano em Python existe um padrão para este tipo de situação cahamado Pythonic. Já Javascript tem que usar boas práticas como Clean Code.