TypeScript: entenda o que é e para que serve a linguagem

Saiba o que é TypeScript e como ele adiciona vários recursos à linguagem JavaScript, como tipagem estática, classes e interfaces

Se você é um programador e quer conhecer mais ainda sobre o mundo de desenvolvimento, entenda aqui sobre o TypeScript. O que é isso, afinal? Nada mais do que é uma linguagem de programação fortemente tipada que se baseia em JavaScript, oferecendo melhores ferramentas em qualquer escala.

Na prática, a funcionalidade permite uma integração mais estreita com o editor, além de ser executado em qualquer lugar que o JavaScript estiver: navegador, Node.js ou DENO e demais aplicativos.

O TypeScript, mantido pela Microsoft, entrou em cena de vez desde quando foi lançado em 2012 e segue relevante até os dias atuais. À medida que a funcionalidade cresceu, mais editores de código começaram a suportá-lo nativamente ou com plugins.

Entenda ao longo do conteúdo o que é TypeScript, como funciona, benefícios e como aplicá-lo. Boa leitura!

O que é TypeScript?

Typescript é um superconjunto (superset, em inglês) do JavaScript puro que adiciona tipagem estática ao código. Isso porque, no JS puro não há tipos estáticos, a tipagem é dinâmica e acontece em tempo de execução.

Além disso, ele permite que o compilador do TypeScript verifique se o código está sendo usado de forma correta, o que pode evitar muitos erros em tempo de execução.

TypeScript Code → TypeScript Compiler JavaScript Code

(.ts File)                                  (.js File)

Há peças que mantêm o TypeScript relevante, por assim dizer. São: linguagem, compilador e serviço.

A linguagem é o que os desenvolvedores adoram escrever. O compilador é o que interpreta a linguagem para os navegadores. O serviço processa o idioma sob demanda com velocidade incrível. Sem isso, o TypeScript simplesmente não é o que é.

<Leia também: como usar JavaScript (JS) />

Relevância

De acordo com a pesquisa de 2021 do Stack Overflow, o TypeScript alcançou a colocação como a sétima linguagem mais popular, classificada por aproximadamente 83.000 desenvolvedores.

O levantamento anual do Stack Overflow é uma das pesquisas de desenvolvedores mais confiáveis ​​e esperadas. Ele usa uma enorme base de desenvolvedores de todo o mundo para chegar às suas conclusões. 

Logo, não é apenas a sétima linguagem mais popular, mas é a segunda tecnologia com a qual os programadores mais desejam trabalhar (seguida por Python) e a terceira linguagem mais amada (atrás de Rust e Clojure).

<Veja depois: entenda o que é Array em JavaScript, como criar e aplicar />

Para que serve o TypeScript?

O TypeScript é utilizado para checagem se os tipos especificados correspondem, mas, isso ocorre antes de executar o código e não durante a execução.

Tal verificação é importante porque o JS não indica informações dos parâmetros e das variáveis de função. Então, como os desenvolvedores investigam as falhas da documentação ou da base implementada? Com o TypeScrip é possível examinar isso.

Qual a relação do TypeScript com o JavaScript?

O TypeScript é uma linguagem de programação que é fortemente tipada e transcompila para JavaScript. Ele adiciona vários recursos à linguagem JavaScript, como tipagem estática, classes e interfaces.

Logo, um complementa o outro quando necessário. Deu para entender?

E a diferença entre ambos?

No caso, o TypeScript relatará um erro ao passar uma string para uma função que espera um número, já o JavaScript não.

String, o que é isso? É o termo designado para cadeias ou conjuntos de caracteres que armazenam dados textuais, assim acumulando informações para os mais diversos fins.

Relação entre TypeScript e JavaScript. (Fonte: Pexels)

E as vantagens de utilizar o TypeScript, quais são?

São muitas, mas a principal é a tipagem forte. Um dos benefícios é em relação à orientação a objetos. Servindo como complemento ao JS para suprir deficiências internas.

Principais conceitos do TypeScript

Conheça logo abaixo.

Encapsulamento

O TypeScript usa o conceito de encapsulamento, presente em outras linguagens orientadas a objetos, por getters e setters para acesso aos atributos protegidos de uma classe.

class ClasseExemplo {

                private _nome: string

                get nome(): string {

                               return this._nome;

                               }

                set nome(nome:string): void {

                               this._nome = nome;

                               }

}

Herança

O comando extends deve ser usado para herdar uma classe. Se o método da classe base for subscrito na classe herdeira, pode-se chamar o método da classe base com o comando super.

class ClasseBase {

                    nome: string;

                    constructor(nome: string) {

                                         this.nome = nome;

                    }

                    print(msg: string = ‘Classe Base’) {

                                         console.log(msg)

                    }

}

class ClasseHerdeira extends ClasseBase {

                    constructor(nome: string) {

                                        super(nome)

                    }

                    print(msg: string = ‘Classe Herdeira’) {

                                         super.print(msg);

                    }

}

Abstração ou classes abstratas

As classes abstratas servem como base para elaboração de outras classes, para assim dar a estrutura padrão de métodos e atributos.

abstract class ClasseAbstrata {
        
        constructor(public nome: string){
               }
printNome(): void {
        console.log(‘Nome’ + this.nome)
}
abstract otherPrint(): void; // deverá ser implementado nas classes filhas
abstract class ClasseAbstrata {
        
        constructor(public nome: string){
               }
printNome(): void {
        console.log(‘Nome’ + this.nome)
}
abstract otherPrint(): void; // deverá ser implementado nas classes filhas
}
class ClasseFilhaAbs extends ClasseAbstrata {
        constructor() {
               super(‘Classe Filha Abs’);
        }
        printNome(): void {
               console.log(‘Classe Filha Abs’);
        }
        otherPrint(): void {
               console.log(‘Other print method’);
        }
}

Interfaces

As interfaces também definem a estrutura das classes que “assinam o contrato” com elas.

A distinção é que todos os métodos e atributos da interface devem ser implementados nas classes filhas. Contudo, você pode definir atributos como opcional também.

interface ClasseInterface {
               atributo1: string;
               atriburo2?: number
               
               print();
}
 
class ClasseFilha implements ClasseInterface {
               atributo1: string = ‘Classe Filha’;
               atriburo2?: number = 1;
               
               print() {
               console.log(this.atributo1);
               }
}

<Leia também: como aprender a programar />

Os tipos mais utilizados no TypeScript

Os tipos no TypeScript são percebidos de forma subentendidos. Veja abaixo alguns:

Number

Usado para todo e qualquer tipo de número, seja ponto flutuante ou inteiro.

String

Retrata uma string conhecida em outras linguagens de programação.

Boolean

Determina um valor booleano, sendo true ou false.

Any

Tipo que pode ser alterado para qualquer outro tipo que consta na linguagem, seja string, boolean ou outro.

Array

Retrata o tipo Array dentro da linguagem.

Tuple

Tipos de tupla representam e expressam um array com um número fixo de elementos cujos tipos são conhecidos, mas não precisam ser os mesmos.

Enum

É um tipo que permite declarar um conjunto de valores nomeados e constantes pré-definidos.

Unknown

Unknown é outro tipo de variável que não sabe qual é ainda ao escrever um código. Tecnicamente, ela pode ter a forma de qualquer coisa.

Null ou Undefined

São itens indefinidos.

Void

Funciona como um retorno de funções que não retornam valor algum, é geralmente designado de procedimento.

Como instalar e iniciar a utilização do TypeScript?

Para instalação e utilização do TypeScript, você irá precisar do NodeJs instalado e seu gerenciador de pacotes padrão, o NPM. Pelo menos para sistemas operacionais Windows, o NPM já vem com Node.js quando o instalamos.

Agora, você deve abrir o cmd e executar o comando abaixo:

npm i -g typescript

O comando indicado acima instala o TypeScript globalmente na sua máquina.

Posteriormente, execute o comando abaixo. Se o TypeScript estiver instalado, a versão aparecerá no console.

tsc -v

Antes de começar a utilização, você precisará de um arquivo de configurações para o compilador do TypeScript. Dentro de um diretório, você vai abrir seu terminal e executar o comando abaixo:

tsc --init

O comando acima, criará o arquivo tsconfig.json automaticamente. Depois disso, é só criar um arquivo com extensão .ts e iniciar a utilizar.

A forma manual de realizar a execução pode ser a seguinte:

tsc <<nome_do_seu_arquivo>>

Esse comando criará um arquivo JavaScript com o mesmo nome do arquivo TypeScript. É o código transpilado para a sintaxe do JavaScript.

Agora, quando a compilação for realizada, todo o código TS se tornará um código JS.


Quer aprender mais? Participe do bootcamp Arquiteto(a) de Soluções. Um conteúdo completo que vai te ensinar tudo sobre as tecnologias mais utilizadas nas soluções arquiteturais para as camadas de infraestrutura, armazenamento de dados, rede, nuvem, cibersegurança e aplicações digitais.

São assuntos focados no que você realmente precisa aprender e desenvolver! Você poderá estudar onde e quando quiser!

Conheça a assinatura Multi Mais e tenha acesso imediato a TODOS os cursos e bootcamps oferecidos pela XP Educação!


spot_img

Continue Aprendendo

spot_img