Aqui tem todo código feito na minha jornada de aprendizagem
-
Sempre adicione o typescript como dependência de desenvolvimento e depois rode yarn tsc --init para gerar o arquivo de configuração.
-
Sempre que adicionar um pacote verifique se tem o @types dele e instale como dependência de desenvolvimento.
yarn tsc
converte TypeScript em JavaScript.
- yarn add ts-node-dev -D
Extremamente rápido para se visualizar modificações feito no código em tempo de desenvolvimento.
ts-node-dev --transpile-only --ignore-watch node_module src/server.ts
--transpile-only, não vai verificar sem tem erros de tipos.
--ignore-watch node_module, ignora a observação e compilação da pasta node_module.
-
Models, que ele representa uma entidade (tabela) no banco de dados.
-
Repository, que eles manipulam os dados das models.
-
Services, fica com a responsabilidade sobre todas regras de negócios.
-
SoC, Separation of Concerns (Separação de Preocupação), que cada parte do código tenha apenas uma preocupação.
-
Dependency Inversion (Inversão de Dependência), sempre que tem uma dependência externa deve receber a instancia como parâmetro do construtor da classe
yarn add eslint@6.8.0 -D
yarn eslint --init
Respostas
- To check syntax, find problems, and enforce code style
- JavaScript modules (import/export)
- None of these
- Yes
- Node
- Use a popular style guide
- Airbnb: https://github.com/airbnb/javascript
- JSON
- No
yarn add @typescript-eslint/eslint-plugin@latest eslint-config-airbnb-base@latest eslint-plugin-import@^2.21.2 @typescript-eslint/parser@latest -D
Comando para criar um container
docker run --name GoBarber-postgres -d -p 5432:5432 -e POSTGRES_PASSWORD=amauri32 postgres
Levantando um container do PostgreSQL na porta 5432
docker ps
Lista todos containers ativos
docker ps -a
Lista todos containers ativos e não ativos
docker start **id**
docker stop **id**
Ligar e desligar os containers, o ID é o que vem ao executar “docker os”
Elas servem para controlar a versão do banco de dados, assim como o git faz com os códigos.
Requer configuração no ormconfig.json
yarn typeorm migration:create -n CreateAppointments
Só pode ser alterada caso ainda não tenha sido mandando para um controle de versão, ou seja ela está apenas em sua máquina, caso contrário tem de criar uma nova migration para fazer as alterações.
No exemplo foi criado uma chamada CreateAppointments
yarn typeorm migration:run
Rodando as migration após criar e configurar
yarn typeorm migration:revert
Para limpar as migration que foram executadas
yarn typeorm migration:show
Para mostrar o status das migration
Uma forma de gerar um sistema de Sesstion com token que tem data de expiração
.gitkeep arquivo serve para mandar uma pasta vazia, por padrão não são mandadas !tmp/.gitkeep, ao usar isso no arquivo .gitignore abre uma exceção
Site para gerar um MD5
Site para testar o Token
Domain Driver Design
DDD é uma metodologia que se aplica somente ao backend, onde cada se separa os arquivos com base em qual dominio eles estão relacinados.
Test Driver Development
TDD é uma mtetodologia onde você primeiro cria os testes que tem as regras de como a aplicação deve funcionar.
Contributions, issues and feature requests are welcome!
- ⭐️ Star the project
- 🐛 Find and report issues
- 📥 Submit PRs to help solve issues or add features
Feel free to check issues page. You can also take a look at the contributing guide.
*Email: amauriibate32@hotmail.com
*GitHub: @amaurioliveira
*LinkedIn: @amauri-oliveira-058066192
Copyright © 2020 Amauri Oliveira This project is MIT licensed.