Este app consiste em uma refatoração do repositório já refatorado anteriormente, refactored-contact-book-api, mas desta vez utilizando Prisma e PostgreSQL. A razão para a nova refatoração não foi o framework de testes, mas sim o fato de que a dependência mongoose
obrigava o time de desenvolvimento a escrever códigos muito acoplados apenas para acessar instâncias de bancos de dados MongoDB.
Com a utilização de Prisma e PostgreSQL, foram abordados conceitos como classes DAO (do inglês: Data Access Object) genéricas e boas convenções para facilitar a troca de banco de dados ou a tecnologia que faz o acesso ao banco de dados, por exemplo.
Este foi o quinto repositório de código apresentado no Curso Superior de TSI do IFMS como requisito para obtenção da nota parcial das atividades da unidade curricular Linguagem de Programação III.
← Repositório anterior | Próximo repositório → |
---|
Papel | Tecnologia |
---|---|
Ambiente de execução | Node |
Linguagem de programação | TypeScript |
Virtualização de banco de dados | Docker |
ORM | Prisma |
Banco de dados1 | MongoDB |
Banco de dados2 | PostgreSQL |
-
Clone o repositório de código em sua máquina;
-
Abra um shell de comando de sua preferência (prompt de comando, PowerShell, terminal etc.);
-
Instale as dependências do projeto através do seguinte comando:
$ npm install
Caso esteja utilizando o gerenciador de pacotes Yarn, execute o seguinte comando como alternativa:
$ yarn
- Com o Docker instalado, execute o comando abaixo para levantar o container Docker com o respectivo banco de dados virtualizado. Certifique-se de estar no diretório do arquivo
docker-compose.yml
;
$ docker-compose up -d
O parâmetro -d
serve para desocupar o shell de comando logo após a execução do comando. É uma boa convenção, ao encerrar a execução do app, derrubar o container levantado através do comando:
$ docker-compose down
Mas, não se preocupe. As tuplas inseridas no banco de dados não serão deletadas com a derrubada do container.
- Agora, para se certificar de que o Prisma está devidamente configurado em sua máquina, execute o seguinte comando:
$ yarn prisma
O script prisma
está programado para criar uma nova migração no diretório prisma/migrations
.
- Finalmente, execute o seguinte comando para executar o app:
Para npm:
$ npm run start
Para Yarn:
$ yarn start