Como você já deve saber, o TypeScript vem crescendo bastante ultimamente, então é primordial que você conheça e saiba como começar um projeto nessa linguagem.
Felizmente, o TypeScript é não nenhum bicho de sete cabeças. Pelo contrário, essa linguagem não passa de JavaScript com algumas funcionalidades a mais. Ao longo desse artigo você verá o quão simples é começar um projeto nessa linguagem.
Eu irei utilizar o gerenciador de pacotes Yarn. Fique a vontade para utilizar qualquer um que você preferir.
Tudo o que eu fizer ficará disponível nesse repositório no GitHub: https://github.com/juanbelieni/typescript-iniciantes
Então, vamos começar.
Iniciando o projeto com o Yarn
Crie uma nova pasta e navegue até ela:
mkdir typescript-iniciantes
cd typescript-iniciantes
Inicie o projeto com Yarn:
yarn init -y
Após esses passos, um arquivo package.json
vai aparecer na raiz do projeto com um conteúdo parecido com esse:
{
"name": "typescript-iniciantes",
"version": "1.0.0",
"main": "index.js",
"license": "MIT"
}
Agora, vamos adicionar o TypeScript.
Adicionando e configurando o TypeScript
Antes de adicionarmos o pacote, temos que ter em mente que o TypeScript é uma ferramenta de desenvolvimento. Em produção, o TypeScript é compilado diretamente para JavaScript.
Portanto, iremos adicionar o TypeScript como um pacote de desenvolvimento:
yarn add -D typescript
Após isso, temos que criar um arquivo chamado tsconfig.json
, usando o comando:
yarn tsc --init
Ao abrir esse arquivo, é possível ver uma infinidade de opções. Mas calma! Vamos mexer em apenas duas por agora, já que não é o nosso foco nos aventurar por todas as possibilidades que o TypeScript nos oferece.
Continuando, localize no arquivo tsconfig.json
as opções outDir
e rootDir
. Elas são importantes pois vão definir em qual pasta vai estar o código em TypeScript e em qual pasta ele vai ser compilado em JavaScript. Substitua os valores padrões pelos seguintes valores:
"outDir": "./build",
"rootDir": "./src",
Dessa maneira, o código em TypeScript deverá estar localizado na pasta src
. Após compilado o código irá estar disponível na pasta build
.
Se quiser fazer um teste, crie um arquivo index.ts
dentro da pasta src
contendo um console.log('Olá TypeScript')
e execute o seguinte comando para ver a mágica acontecer:
yarn tsc
Criando os scripts build
, start
e dev
Até agora apenas adicionamos o TypeScript, porém ainda é necessário criar três scripts importantes para qualquer projeto nessa linguagem.
Esses scripts vão estar localizados no package.json
:
{
"name": "typescript-iniciantes",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
},
"devDependencies": {
"typescript": "^3.9.7"
}
}
Para executá-los, basta escrever yarn <script>
ou npm run <script>
, se você estiver usando NPM.
Os scripts build
e start
Eles vão servir para compilar o código em JavaScript e executá-lo após isso.
"scripts": {
"build": "tsc",
"start": "node build/index.js"
},
O script dev
Esse script vai servir para que, quando estivermos no ambiente de desenvolvimento, não precisemos compilar o código toda vez que fizermos alguma alteração.
Para isso, vamos usar um pacote chamado ts-node-dev
:
yarn add -D ts-node-dev
E após isso, basta adicionar o script com a flag --ignore-watch node_modules
para que ele ignore a pasta node_modules
:
"scripts": {
"build": "tsc",
"start": "node build/index.js",
"dev": "ts-node-dev --ignore-watch node_modules src/index.ts"
},
Começando o desenvolvimento
Agora que já configuramos tudo que era necessário, já podemos começar a desenvolver. Eu irei criar uma rota bem simples em Express para servir de exemplo. Para isso, eu irei adicionar o Express e o seu pacote de tipos:
yarn add express
yarn add -D @types/express
No arquivo src/ìndex.ts
:
import express from 'express';
const app = express();
app.use(express.json());
interface RequestBody {
name: string;
}
app.post('/', (request, response) => {
const user = request.body as RequestBody;
return response.send({
message: `Hello ${user.name}`,
});
});
app.listen(3000, () => console.log('Listening 3000'));
Concluindo
Como foi visto, essa foi uma configuração bem básica para quem quer começar a estudar TypeScript. Recomendo que você se aprofunde no estudo dessa ferramenta, que pode ajudar bastante na hora do desenvolvimento.
Top comments (0)