Guia prático de TypeScript: Melhore suas aplicações JavaScript
()
Sobre este e-book
Neste livro, Thiago da Silva Adriano abordará conceitos básicos do TypeScript, como tipagem básica, interfaces, decorators e Generics. Você vai aprender já com as mãos na massa, acompanhando o passo a passo desde a instalação do pré-processador até o desenvolvimento de uma API fazendo uso de tecnologias como Node.js, o banco de dados MongoDB e contêineres Docker.
Relacionado a Guia prático de TypeScript
Ebooks relacionados
ECMAScript 6: Entre de cabeça no futuro do JavaScript Nota: 5 de 5 estrelas5/5JavaScript Assertivo: Testes e qualidade de código em todas as camadas da aplicação Nota: 0 de 5 estrelas0 notasFront-end com Vue.js: Da teoria à prática sem complicações Nota: 5 de 5 estrelas5/5O retorno do cangaceiro JavaScript: De padrões a uma abordagem funcional Nota: 0 de 5 estrelas0 notasArquitetura de software distribuído: Boas práticas para um mundo de microsserviços Nota: 0 de 5 estrelas0 notasConstruindo APIs REST com Node.js: Caio Ribeiro Pereira Nota: 5 de 5 estrelas5/5Kubernetes: Tudo sobre orquestração de contêineres Nota: 5 de 5 estrelas5/5Desenvolva jogos com HTML5 Canvas e JavaScript Nota: 4 de 5 estrelas4/5Aplicações web real-time com Node.js Nota: 5 de 5 estrelas5/5Meteor: Criando aplicações web real-time com JavaScript Nota: 5 de 5 estrelas5/5Design Patterns com PHP 7: Desenvolva com as melhores soluções Nota: 5 de 5 estrelas5/5Caixa de Ferramentas DevOps: Um guia para construção, administração e arquitetura de sistemas modernos Nota: 0 de 5 estrelas0 notasPrimeiros passos com Node.js Nota: 0 de 5 estrelas0 notasCanivete suíço do desenvolvedor Node Nota: 0 de 5 estrelas0 notasDesenvolvimento web com ASP.NET MVC Nota: 0 de 5 estrelas0 notasMezzio e PHP 7: Uma união poderosa para criação de APIs Nota: 2 de 5 estrelas2/5DevOps na prática: Entrega de software confiável e automatizada Nota: 0 de 5 estrelas0 notasASP.NET Core MVC: Aplicações modernas em conjunto com o Entity Framework Nota: 5 de 5 estrelas5/5Zend Expressive e PHP 7: Uma união poderosa para a criação de APIs Nota: 0 de 5 estrelas0 notasTDD e BDD na prática: Construa aplicações Ruby usando RSpec e Cucumber Nota: 0 de 5 estrelas0 notasRSpec: Crie especificações executáveis em Ruby Nota: 0 de 5 estrelas0 notasArmazenando dados com Redis Nota: 0 de 5 estrelas0 notasProdutividade em C#: Obtenha mais resultado com menos esforço Nota: 0 de 5 estrelas0 notasFundamentos De Programação Javascript Nota: 0 de 5 estrelas0 notasHTML5 e CSS3: Domine a web do futuro Nota: 4 de 5 estrelas4/5eXtreme Programming: Práticas para o dia a dia no desenvolvimento ágil de software Nota: 0 de 5 estrelas0 notasProgramação em C# Para Iniciantes Nota: 5 de 5 estrelas5/5Vue.js: Construa aplicações incríveis Nota: 0 de 5 estrelas0 notasSass: Aprendendo pré-processadores CSS Nota: 0 de 5 estrelas0 notasAPIs REST: Seus serviços prontos para o mundo real Nota: 5 de 5 estrelas5/5
Programação para você
Python: Escreva seus primeiros programas Nota: 4 de 5 estrelas4/5Manual de sobrevivência do novo programador: Dicas pragmáticas para sua evolução profissional Nota: 4 de 5 estrelas4/5O universo da programação: Um guia de carreira em desenvolvimento de software Nota: 5 de 5 estrelas5/5Lógica de Programação: Crie seus primeiros programas usando Javascript e HTML Nota: 4 de 5 estrelas4/5HTML5 e CSS3: Domine a web do futuro Nota: 4 de 5 estrelas4/5Orientação a Objetos: Aprenda seus conceitos e suas aplicabilidades de forma efetiva Nota: 5 de 5 estrelas5/5Introdução a Data Science: Algoritmos de Machine Learning e métodos de análise Nota: 0 de 5 estrelas0 notasMySQL: Comece com o principal banco de dados open source do mercado Nota: 4 de 5 estrelas4/5Estruturas de Dados: Domine as práticas essenciais em C, Java, C#, Python e JavaScript Nota: 0 de 5 estrelas0 notasLógica de programação com Portugol: Mais de 80 exemplos, 55 exercícios com gabarito e vídeos complementares Nota: 0 de 5 estrelas0 notasIntrodução à programação em C: Os primeiros passos de um desenvolvedor Nota: 4 de 5 estrelas4/5SEO Prático: Seu site na primeira página das buscas Nota: 0 de 5 estrelas0 notasOrientação a Objetos em C#: Conceitos e implementações em .NET Nota: 5 de 5 estrelas5/5Desenvolvimento web com PHP e MySQL Nota: 3 de 5 estrelas3/5Trilhas Python: Programação multiparadigma e desenvolvimento Web com Flask Nota: 5 de 5 estrelas5/5Arduino: Guia para colocar suas ideias em prática Nota: 5 de 5 estrelas5/5Scrum 360: Um guia completo e prático de agilidade Nota: 5 de 5 estrelas5/5Linux Essentials: um guia do sistema operacional Linux para iniciantes Nota: 0 de 5 estrelas0 notasPostgreSQL: Banco de dados para aplicações web modernas Nota: 5 de 5 estrelas5/5Aprenda a programar com Python: Descomplicando o desenvolvimento de software Nota: 5 de 5 estrelas5/5Django de A a Z: Crie aplicações web rápidas, seguras e escaláveis com Python Nota: 0 de 5 estrelas0 notasGuia do mestre programador: Pensando como pirata, evoluindo como jedi Nota: 3 de 5 estrelas3/5Python e mercado financeiro: Programação para estudantes, investidores e analistas Nota: 5 de 5 estrelas5/5Certificação Linux Essentials Nota: 4 de 5 estrelas4/5O Programador Apaixonado: Construindo uma carreira notável em desenvolvimento de software Nota: 5 de 5 estrelas5/5Desenvolvimento de Jogos em HTML5 Nota: 5 de 5 estrelas5/5O Guia Definitivo para Geração de Renda com o ChatGPT para Empreendedores Nota: 0 de 5 estrelas0 notasMachine Learning: Introdução à classificação Nota: 0 de 5 estrelas0 notasKotlin com Android: Crie aplicativos de maneira fácil e divertida Nota: 4 de 5 estrelas4/5Business Intelligence: Implementar do jeito certo e a custo zero Nota: 4 de 5 estrelas4/5
Avaliações de Guia prático de TypeScript
0 avaliação0 avaliação
Pré-visualização do livro
Guia prático de TypeScript - Thiago da Silva Adriano
Sumário
ISBN
Sobre o livro
1. Introdução ao TypeScript
2. Conhecendo os types
3. Estruturas de controle e repetição
4. POO (Programação Orientada a Objetos)
5. Interfaces
6. Generics
7. Decorator
8. Modules e namespaces
9. Visual Studio Code
10. Docker: Configurando ambiente de banco de dados
11. Criando API TypeScript, Node.js, MongoDB e Docker
12. Criando novas models
13. Injeção de Dependência
14. Documentando o projeto
15. Conclusão
ISBN
Impresso: 978-65-86110-77-7
Digital: 978-65-86110-78-4
Caso você deseje submeter alguma errata ou sugestão, acesse http://erratas.casadocodigo.com.br.
Sobre o livro
Este livro é destinado a profissionais que têm interesse em aprender a trabalhar com TypeScript por meio de exemplos práticos e reais.
A ideia central é passar tudo o que eu aprendi desenvolvendo projetos com TypeScript nos últimos anos nos meus trabalhos como freelancer e na TV Bandeirantes. Vamos iniciar abordando conceitos básicos, como os tipos suportados pelo TypeScript até a construção de uma API que retorna os dados de uma base de dados MongoDB, que será configurada em um contêiner Docker.
Como pré-requisito, você precisa conhecer lógica de programação, ter um conhecimento básico de JavaScript e muita vontade de aprender algo novo e disposição para replicar cada um dos exemplos aqui demonstrados.
Ao final deste livro, você terá desenvolvido uma solução completa com TypeScript, passando por todas as etapas que eu utilizei para desenvolver uma API para o programa MasterChef em uma de suas edições anteriores.
Para isso, nós utilizaremos as seguintes ferramentas e tecnologias:
Visual Studio Code
Node.js
TypeScript na versão 4.2.3
Docker para ambiente de desenvolvimento
MongoDB como base de dados
Agradecimentos
Primeiramente, gostaria de agradecer a Deus por tudo o que ele tem feito na minha vida! À minha mãe Elenice pelo amor, força, incentivo e por todo o apoio que me deu desde o meu primeiro dia de vida. À minha irmã Thamiris por estar sempre ao meu lado, nos momentos bons e ruins.
À minha esposa Juliana pelo apoio e motivação nesses últimos meses em que me dediquei a escrever este livro e pela parceria de vida.
À minha filha Agnes que, mesmo sem saber ler ou programar, fez algumas revisões comigo brincando e escutando galinha pintadinha.
Ao meu primo Rafael Izidoro, que me proporcionou o melhor investimento da minha vida: uma caixa de cerveja por três meses de aula de programação. Sem esse investimento eu não teria entrado para a área de tecnologia e não estaria escrevendo este livro hoje.
Ao Gabriel Schade Cardoso por ter acreditado no livro e ter feito a ponte para que ele se tornasse realidade.
Por fim, Vivian Matsui, muito obrigado pela parceria, paciência e dedicação nos últimos meses em que finalizamos este livro juntos e agradeço à Casa do Código pela oportunidade de realizar esse sonho de escrever um livro com vocês.
Sobre o autor
Thiago Silva AdrianoFigura 0.1: Thiago Silva Adriano
Sou Microsoft (MVP) e atualmente trabalho como líder técnico na empresa TV Bandeirantes. Nestes últimos anos, foquei nas tecnologias criadas pela Microsoft, mas estou sempre antenado com as novas tendências que estão surgindo no mercado. Sou uma pessoa apaixonada pelo que faz e tem a sua profissão como hobby.
Blog: https://programadriano.medium.com/
GitHub: https://github.com/programadriano
Podcast: https://devshow.com.br, onde eu e alguns amigos falamos sobre vários assuntos em alta na comunidade dev.
Participo das comunidades:
.NET SP: a maior comunidade de .NET: https://www.meetup.com/pt-BR/dotnet-Sao-Paulo/
SampaDevs: comunidade criada para compartilhamento de conhecimento sobre todas as tecnologias: https://www.meetup.com/pt-BR/SampaDevs/
AprendendoJS: comunidade nova criada para meetups sobre JavaScript: https://www.meetup.com/pt-BR/learning-nodejs/
Capítulo 1
Introdução ao TypeScript
O TypeScript é um pré-processador (superset) de códigos JavaScript open source desenvolvido e mantido pela Microsoft. Ele foi desenvolvido pelo time do Anders Hejlsberg, arquiteto líder do time TypeScript e desenvolvedor do C#, Delphi e do Turbo Pascal. A sua primeira versão, a 0.8, foi lançada em 1 de outubro de 2012.
Ele foi projetado para auxiliar no desenvolvimento de códigos simples até os mais complexos, utilizando os princípios de Orientação a Objetos, como classes, tipagens, interfaces, Generics etc.
Aqui chegamos à primeira dúvida de todo desenvolvedor que está iniciando com TypeScript: por que tipar o JavaScript?
Essa, na realidade, é uma das vantagens de se trabalhar com esse pré-processador. A utilização de tipagem ajuda no momento de depuração (debug) do nosso código, prevenindo alguns possíveis bugs ainda em tempo de desenvolvimento.
Mas como ele funciona?
Como os navegadores não interpretam código TypeScript, nós precisamos transpilar o nosso código para uma das versões ECMAScript.
A figura a seguir demonstra o seu processo de compilação (transpiler). O arquivo .ts é o código desenvolvido em TypeScript, a engrenagem é o compilador, e o arquivo .js é o código final JavaScript.
Processo de compilação.Figura 1.1: Processo de compilação.
1.1 Instalação
Para instalar o TypeScript, é necessário ter o Node.js e o seu gerenciador de pacotes, o NPM, instalados no seu computador. Caso você ainda não tenha, basta acessar o link https://nodejs.org/en/ e baixar um executável de acordo com o seu sistema operacional.
Para verificar se ele foi instalado corretamente ou qual é a versão que você tem instalada, basta abrir um terminal no seu computador e digitar o comando: node -v && npm -v.
Versão do Node.js e NPM.Figura 1.2: Versão do Node.js e NPM.
Ao utilizar o npm seguido de install, estamos passando para o gerenciador que ele deve instalar o pacote informado depois da instrução install.
Um ponto importante para destacar neste momento é que, quando trabalhamos com pacotes npm, é comum ter alguns deles instalados em modo global, o que nos permite executar esse pacote de qualquer lugar do nosso computador.
Para ter um pacote npm instalado em modo global, basta adicionar o -g antes do nome do pacote.
Vamos instalar o TypeScript em modo global. Para isso, digite o comando: npm install -g typescript no seu terminal.
Uma vez instalado, o compilador do TypeScript estará disponível executando o comando tsc. Para verificar a versão instalada, basta digitar o comando tsc -v dentro de um terminal.
Versão do TypeScript.Figura 1.3: Versão do TypeScript.
1.2 Executando manualmente o TypeScript
Com o TypeScript instalado em modo global, crie um novo diretório no seu computador para organizar os exemplos desta seção. Dentro desse diretório, crie um arquivo chamado: meuprimeiro.ts.
Para os próximos passos será necessária a utilização de um editor de textos. Vou utilizar o Visual Studio Code pela sua integração com o TypeScript, mas todos os exemplos aqui demonstrados funcionarão em qualquer editor de textos.
Para instalar o Visual Studio Code, basta baixar um executável correspondente ao seu SO (sistema operacional) e, em seguida, seguir os respectivos passos de instalação padrão. Segue link para download: https://code.visualstudio.com/download
Com o seu editor de textos aberto, abra o arquivo meuprimeiro.ts nele e em seguida atualize-o com o seguinte trecho de código:
const a : string = 'Hello World'; console.log(a);
Abra um terminal no seu computador, navegue até o diretório em que você criou o arquivo meuprimeiro.ts e execute o comando tsc meuprimeiro.ts.
Note que será criado um novo arquivo chamado meuprimeiro.js na raiz de sua pasta.
Agora, para validar o passo anterior, execute o comando node meuprimeiro.js no seu terminal. Caso tudo esteja OK, você deve receber a seguinte mensagem no seu terminal: Hello World.
1.3 Entendendo o compilador do TypeScript
O compilador do TypeScript é altamente configurável. Ele nos permite definir o local onde estão os arquivos .ts dentro do nosso projeto, o diretório de destino dos arquivos transpilados, a versão ECMAScript que será utilizada, o nível de restrição do verificador de tipos e até se o compilador deve permitir arquivos JavaScript.
Cada uma das opções de configuração pode ser passada para um arquivo chamado tsconfig.json. Para quem não conhece, esse é o principal arquivo de configuração do TypeScript.
Para criar esse arquivo dentro de um novo projeto, basta executar o comando tsc --init. Isso vai criar um arquivo na raiz do seu projeto com algumas configurações padrões, como target, module entre outras. A seguir você tem uma imagem demonstrando esse arquivo com as configurações default dele.
Versão do TypeScript.Figura 1.4: Versão do TypeScript.
Para que você possa entender melhor como funciona o compilador, vamos criar um novo arquivo TypeScript.
No mesmo diretório que você criou o seu arquivo de configurações no passo anterior, crie um arquivo com a extensão .ts. Para esse exemplo, eu criarei um arquivo chamado index.ts, mas você pode escolher um nome de sua preferência.
Um ponto importante que devemos sempre lembrar no momento de criação de novos arquivos, é respeitar a convenção que os desenvolvedores JavaScript já utilizam hoje, a utilização do camelCase. Exemplo: myControl.ts.
Com o seu arquivo TypeScript criado, atualize-o com o seguinte trecho de código:
var languages : Array
> = [];
languages.push(
TypeScript
);
languages.push(
3);
Analisando esse trecho de código, nós criamos um array de string e estamos adicionando a ele uma string com o valor TypeScript e um número com o valor 3.
Será que o compilador vai transpilar esse código? Note que nós temos um array de string e estamos tentando passar um