Entenda o TypeScript! 👨‍💻

Neste breve artigo iremos entender as diferenças do TypeScript para o JavaScript, o porquê de ser tão usado e estar subindo em comparação com as outras linguagens de programação. Quando devemos ou não usar o TypeScript e como utiliza-lo.

TypeScript x JavaScript, quais as diferenças 🤔

JavaScript

segundo a alura

É uma linguagem de programação fácil de começar. Pode ser usado do lado do cliente e/ou do lado do servidor, é uma linguagem dinâmica, flexível, tem um ecossistema maduro, possui primitivos de linguagem como string, número e objeto, porém ela não verifica se você atribuiu os tipos de forma consistente e é aí que começa o debate.

Variáveis mutáveis

Suas variáveis não possuem tipos definidos e podem ser alterados em qualquer momento.

TypeScript

segundo a documentação do TypeScript

TypeScript mantém uma relação incomum com o JavaScript, ou seja, oferece todos os recursos do JavaScript e uma camada adicional sobre eles: o sistema de tipos TypeScript.

O TypeScript basicamente é uma adição ao JavaScript, assim permitindo a criação de variáveis com tipos estáticos, facilita o uso das clases, e por fim monstra os erros antes mesmo de rodar o código. Quando é rodado algum código em TypeScript ele será transformado em JavaScript por fim rodará o código. Com isso é possível perceber que o TypeScript é somente uma adição de alguns recursos de desenvolvimento para o JavaScript.

Suas Vantagens

  • Feedback mais rápido de erros
  • Processo de refatoração mais fácil
  • Autocomplete melhorado
  • Opção de tipagens de variáveis
  • Potencial de escalabilidade muito maior

Algumas das suas principais características

  • Tipo em variáveis
    const ola: string = "Olá mundo"
  • Classe
    class Produto {
        public nome: string;
        private preco: number;

        constructor(nome:string, preco: number) {
            this.nome = nome;
            this.preco = preco;
        }

        public precoComDesconto() {
            return this.preco - (this.preco * 0.10);
        }
        public getPreco() {
            return this.preco;
        }
    }
  • Interface
interface Produto {
  id: number;
  name: string;  
}
Porque usá-lo

O TypeScript facilita na hora de programar, além de possuir diversos features que facilita na construção de aplicações mais estruturadas, assim permitindo codar aplicações com o potencial de escalabilidade muito maior.

TypeScript em alta!? ☝️⚡

top programming languages by github fonte: github octoverse O TypeScript vem alcançando e chegando em grandes marcas, de 2017 até 2020 estava sendo usado cada vez mais entre os programadores que utilizam o github. Sim, ele está em alta e com tendência de ultrapassar novas marcas, isso deve-se a sua ampla utilização em diversos dispositivos de diversas formas, tato como um cliente quanto como servidor.

E agora, como crio um projeto em TypeScript 🐛

Agora que já entendemos como funciona o TypeScrit bora iniciar um projeto, para isso fiz um artigo no TabNews de como criar o seu primeiro projeto / biblioteca, você pode acessá-lo clicando nesse link: Iniciando no TypeScript

Legal, eu ja conhecia bastante a linguagem javascript, mas tive poucas abordagens em typescript, bacana entender melhor a linguagem e ver como ela está crescendo no mercado, diversos npms usam ela, acho isso demais, e seu artigo explicou um pouco disso, parabéns pelo artigo.

Muito legal ver o TypeScript cada vez mais em alta!

Tenho estudado bastante sobre ele recentemente e é bem interessante ver que algo que começou como um superset do JavaScript, hoje ser considerado de fato uma linguagem de programação.

Outra coisa legal é que tem surgido novas runtimes que já fornecem suporte nativo para TypeScript, como o https://bun.sh.

Show, já conhecia o bun, ele é uma ferramenta com um potencial muito forte, se for ver pode até ser considerado a melhor ferramenta em performace... ![estatísticas bun](https://i.imgur.com/9ov2Se4.png) Isso tudo estando somente na versão 0.4.0, é merito de se ganhar os olhares atentos dos devs 👀
Realmente, a diferença em termos de performance é bem grande! Essa ferramenta tem potencial suficiente para substituir o Node.js e o Deno num futuro próximo. Fora que já vem com muita coisa nativa, como client de SQLite, carregamento automático do .env, etc. Agora é esperar pra ver como serão as versões estáveis.