Giter VIP home page Giter VIP logo

project-car-shop's Introduction

Projeto feito no módulo de Back-End na instituição de ensino Trybe.

Uma API TypeScript com CRUD seguindo os princípios de Programação Orientada a Objetos (POO) e um banco de dados MongoDB para gerenciar uma concessionária de veículos.

Apresentação

No que se refere a modelagem de software, percebe-se a vastidão de metodologias dispostas para organização e segurança disponíveis para serem implementadas nas aplicações. Baseado nessa premissa e na forma de escrever os testes unitários que essa API foi construída. Nela, vamos ter uma construção baseada em POO e SOLID utilizando arquitetura MSC (Camada de Modelo, Camada de Serviço e Camada de Controladores). Além de tudo isso, tornou-se constante uma reflexão na construção do projeto: "será que essa é a melhor forma de fazer isso?", e foi através desse questionamento que fixei de maneira mais coesa e elaborada todos os conhecimentos necessários para aderência do código à especificação, organização do código e, por fim, a qualidade e a cobertura de 100% dos testes unitários.

Objetivos

  • Exercitar o conhecimento dos pilares da Programação Orientada a Objetos: Herança (capacidade de herdar), Abstração (não exibição do funcionamento interno da classe), Encapsulamento (disponibiliza apenas os atributos e métodos que são necessários) e Polimorfismo (métodos implementados, mas que não necessariamente se comportam da mesma forma);
  • Treinar a utilização de Composição;
  • Realizar a criação e utilização de Interfaces;
  • Implementar, em TypeScript: Classes, Instâncias, Atributos, Métodos e Objetos;
  • Aplicar os conhecimentos de MongoDB, Typescript, SOLID (princípio da responsabilidade única, aberto/fechado, substituição de Liskov, segregação da interface e princípio da inversão de dependência) e POO para criar uma API com CRUD.

Como usar

  • Fork o repositório;

  • Clone para sua máquina local: git clone https://github.com/YourAccount/Project-car-shop.git;

Com docker:

  • Rode os serviços node e db com o comando docker-compose up -d
  • docker exec -it car_shop bash
  • Instale as dependências: npm install;

Sem docker:

  • Instale as dependências: npm install;

project-car-shop's People

Contributors

italo9 avatar trybe-tech-ops avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.