Vimos resumidamente o que é o TypeScript no texto que abordava sobre as principais linguagens de programação. Então podemos começar dizendo que sim, TypeScript é uma linguagem, uma das mais conhecidas e usadas dentro do mundo da programação.
O TypeScript foi desenvolvido pela Microsoft tendo como base o JavaScript (JS). Em outras palavras, podemos dizer que o TypeScript tem todas as funcionalidades do JavaScript, porém com algumas funcionalidades a mais.
Apesar do JavaScript ser uma linguagem fundamental na maioria das aplicações dentro da programação, ele não possui, mesmo com tanto tempo de mercado, alguns recursos e características que são necessários dentro do desenvolvimento de software de grande escala.
Acompanhando algumas mudanças que foram acontecendo durante o tempo, os projetos que eram resumidos a pequenos arquivos com algumas linhas de códigos, passou a ser necessária a possibilidade de construir projetos mais sólidos, onde se podia organizar melhor os códigos e aplicar as melhores práticas e técnicas de programação, como a orientação a objetos e dentro dela, as interfaces. E foi por essas necessidades e funcionalidades a mais que o TypeScript foi criado, com a intenção de melhorar a produtividade de quem o utiliza, além de facilitar o trabalho dos programadores melhorando na facilidade de descobrir falhas e bugs.
O TypeScript se destaca por dois diferenciais. Sua tipagem estática e por suas melhorias no suporte da Programação Orientada a Objetos.
Ao contrário do JavaScript que tem a Tipagem dinâmica, o TypeScript apresenta uma tipagem estática. Uma das suas principais características é a “tipagem forte”, razão que leva em seu nome o prefixo “type”.
E porque falamos “tipagem forte”? No TypeScript podemos não somente inferir os tipos de forma explícita, como também podemos explicitar o tipo, ou seja, esclarecer, detalhar a tipagem. Com isso, o desenvolvedor tem a responsabilidade de declarar qual a variável que será utilizada. Os tipos mais utilizados são:
No que diz respeito à escrita dos códigos em TypeScript frente às melhorias da Programação Orientada a Objetos, precisamos compreender seus princípios básicos que facilitam toda a ação: encapsulamento, herança, abstração e o polimorfismo.
Encapsulamento: refere-se a uma forma de estruturação do código para que um determinado bloco tenha pontos de acesso específico para o ambiente externo, garantindo a visibilidade e acessibilidade. O TypeScript faz o uso de getters e setters para ter acesso aos atributos protegidos de uma classe.
Herança: O princípio de herança diz que, uma classe (filha) pode herdar de outra (pai), características e comportamentos já definidos, sem necessidade de redefinição. Em TypeScript, para implementar esse conceito é igual da linguagem Java, usando a palavra “extends” após o nome da classe filha, seguida do nome da classe pai, tendo assim um código muito mais fácil e compreensível.
Abstração: é a capacidade de destacar as características dos elementos do mundo real que serão mais úteis para o sistema, é o princípio mais utilizado na POO. Essas características são reunidas em classes, e dentro das classes temos as classes abstratas, que até a última versão do TypeScript suportavam diretamente, porém também podemos utilizar as interfaces para implementar esse princípio.
Polimorfismo: Polimorfismo é um conceito a partir do qual objetos podem assumir formas diferentes em determinadas situações, mas mantendo uma relação com sua definição inicial de nível mais alto. Aliado ao conceito de herança, o polimorfismo indica que um objeto do tipo de uma classe pai pode assumir a forma de qualquer uma de suas classes filhas, mas não o inverso, e o TypeScript permite o polimorfismo por meio dos métodos.
Outro ponto que merece destaque dentro do TypeScript é a possibilidade que temos de criar interfaces personalizadas, que nos ajudam a ter consistência entre os conjuntos de objetos, garantindo que os tipos adequados sejam utilizados.
Assim como foi dito anteriormente, dentro do TypeScript é possível “detalhar” a tipagem, e dentro da interface não é diferente. A interface no TypeScript permite trabalhar com funções. Assim, quem implementa a interface, deverá implementar as funções bem definidas nas interfaces, além de permitir que uma interface se estenda a outra, sendo possível reaproveitar todas as definições de uma interface.
Diante de tudo que vimos, podemos então compreender que a linguagem de programação TypeScript veio para facilitar a vida do programador que já usava o JavaScript, e mostrar que a utilização dessa linguagem permite que o código seja melhor estruturado, aperfeiçoando o projeto com as melhores práticas e técnicas de programação.
Cadastre-se e mantenha-se atualizado (a) sobre o que está acontece no mundo digital
Obrigado por se inscrever. Em breve novidades na sua caixa de e-mail!