Essa sistema faz parte do treinamento do professor Rodrigo Manguinho (Mango) na Udemy.
O objetivo do treinamento é mostrar como criar um sistema em ReactJs utilizando os novos Hooks, com uma arquitetura bem definida e desacoplada, utilizando TDD (programação orientada a testes) como metodologia de trabalho, Clean Architecture para fazer a distribuição de responsabilidades em camadas, sempre seguindo os princípios do SOLID, DRY, YAGNI, KISS e aplicando Design Patterns para resolver alguns problemas comuns.
- Single Responsibility Principle (SRP)
- Open Closed Principle (OCP)
- Liskov Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)
- Separation of Concerns (SOC)
- Don't Repeat Yourself (DRY)
- You Aren't Gonna Need It (YAGNI)
- Keep It Simple, Silly (KISS)
- Composition Over Inheritance
- Small Commits
- Factory
- Adapter
- Composite
- Decorator
- Dependency Injection
- Abstract Server
- Composition Root
- Builder
- Proxy
- TDD
- Clean Architecture
- DDD
- Reactive Programming
- Responsive Layout
- Conventional Commits
- GitFlow
- Modular Design
- Dependency Diagrams
- Use Cases
- Continuous Integration
- Continuous Delivery
- Continuous Deployment
- Typescript
- React
- React Testing Library
- React Router DOM
- Cypress
- Jest
- Axios
- Git
- Webpack
- SASS + Animations
- NPM
- Travis CI
- Faker
- Coveralls
- Husky
- Lint Staged
- Eslint
- Standard Javascript Style
- React Flip Move
- Functional Components
- UseState
- UseContext
- UseEffect
- UseHistory
- UseRef
- UseParams
- Custom Hooks
- Router
- Memo
- Alias
- Log Personalizado
- Branch
- Reset
- Amend
- Tag
- Tag Anotada
- Stash
- Rebase
- Merge
- Add
- Commit
- Push
- Pull
- Shortlog
- Status
- POO Avançado
- Interface
- Type Alias
- Namespace
- Module
- Utility Types
- Modularização de Paths
- Build
- Deploy
- Generics
- Testes Unitários
- Testes de Integração
- Testes e2e
- Cobertura de Testes
- Test Doubles
- Mocks
- Stubs
- Spies
- Fakes
- Dummies