Perspectivas sobre TypeScript

1. Origem do TypeScript:

TypeScript é um superconjunto de JavaScript que suporta o padrão ECMAScript 6 (ES6).

Desenvolvido pela Microsoft, é uma linguagem de programação livre e de código aberto.

Sua criação surgiu da necessidade de lidar com projetos JavaScript de grande escala. As limitações inerentes do JavaScript dificultam a manutenção e o desenvolvimento de sistemas complexos. Assim, a Microsoft criou o TypeScript para preancher essa lacuna e permitir a construção de aplicações robustas.

2. Diferenças entre JavaScript e TypeScript

TypeScript estende a sintaxe do JavaScript, funcionando como seu superconjunto. Código JavaScript existente pode ser usado sem alterações, enquanto o TypeScript adiciona verificação estática de tipos em tempo de compilação, por meio de anotações de tipo.

O compilador TypeScript processa tanto códigos JS puros quanto os trechos específicos de TS, gerando JavaScript válido ao final.

3. Princípio central do TypeScript: verificação estrutural de tipos

Um dos pilares do TypeScript é a verificação de tipos com base na estrutura dos valores. Esse conceito é frequentemente chamado de "duck typing" ou "subtipo estrutural".

As interfaces no TypeScript servem para nomear eses tipos e definir contratos entre o código e bibliotecas de terceiros. Elas declaram métodos abstratos que devem ser implementados por classes concretas.

Vale notar que o verificador de tipos não se importa com a ordem dos atributos – desde que as propriedades existam e tenham os tipos corretos, a validação passa.

4. TypeScript e programação orientada a objetos

Orientação a objetos é uma forma de abstrair e copmreender o mundo real.

TypeScript é uma linguagem orientada a objetos, baseada em dois conceitos fundamentais: objeto e classe.

  • Objeto: é uma instância de uma classe, com estado e comportamento. Por exemplo, um cachorro (objeto) possui estado (cor, nome, raça) e comportamento (latir, abanar o rabo, comer).
  • Classe: é um modelo que descreve o estado e o comportamento de um conjunto de objetos.
  • Método: é a implementação de uma operação dentro de uma classe.

Na prática, temos classes como Garota e Garoto; cada pessoa específica é um objeto dessas classes.

5. Tipagem forte no TypeScript

Atribuir um valor de tipo diferente ao esperado gera erro de compilação, garantindo maior segurança ao código.

6. Declaração de variáveis em TypeScript

Variáveis são marcadores convenientes para referenciar endereços de memória.

Podemos enxergá-las como contêineres de dados.

Regras de nomenclatura:

  • Podem conter letras e números.
  • Apenas _ (underline) e $ são permitidos como caracteres especiais (sem espaços).
  • Não podem começar com dígito.

Declara-se uma variável com var (ou let/const modernos) seguindo uma destas formas:

// Com tipo e valor inicial
var nome: string = "Exemplo";

// Apenas tipo, valor fica undefined
var idade: number;

// Apenas valor, tipo inferido como any
var ativo = true;

// Sem tipo nem valor, any e undefined
var variavel;

Exemplo prático:

var usuario: string = "João";
var contador: number;
contador = 10;

Tags: TypeScript javascript estrutura de tipos Interfaces Orientação a Objetos

Publicado em 7-9 20:10