Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rmanguinho/clean-flutter-app

Aplicativo feito em Flutter usando TDD, Clean Architecture, Design Patterns e SOLID principles
https://github.com/rmanguinho/clean-flutter-app

clean-architecture dart design-patterns flutter solid-principles

Last synced: about 2 months ago
JSON representation

Aplicativo feito em Flutter usando TDD, Clean Architecture, Design Patterns e SOLID principles

Awesome Lists containing this project

README

        

[![GPLv3 License](https://img.shields.io/badge/License-GPL%20v3-yellow.svg)](https://opensource.org/licenses/)
[![Open Source](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://opensource.org/)
![Dart Version](https://img.shields.io/static/v1?label=dart&message=2.14.2&color=00579d)
![Flutter Version](https://img.shields.io/static/v1?label=flutter&message=2.5.1&color=42a5f5)
![Null Safety](https://img.shields.io/static/v1?label=null-safety&message=done&color=success)

# **4Dev Flutter - Enquetes para Programadores**

[![alt text](./requirements/assets/course-logo.png "Link para o treinamento")](https://www.udemy.com/course/flutter-com-mango/?referralCode=4595D68027AC351A7454)

---

## [**Link para o curso completo**](https://www.udemy.com/course/flutter-com-mango/?referralCode=4595D68027AC351A7454)

Essa aplicativo faz parte do treinamento do professor Rodrigo Manguinho (Mango) na Udemy.

O objetivo do treinamento é mostrar como criar um aplicativo com Flutter usando uma arquitetura bem definida e desacoplada, seguindo 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 e aplicando Design Patterns para resolver alguns problemas comuns.


## Contribua com esse Projeto <3
Buy Me a Coffee at ko-fi.com


## [**Link para a documentação da API**](http://fordevs.herokuapp.com/api-docs)

> ## Princípios

* 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)
* Command Query Responsibility Segregation (CQRS)
* Composition Over Inheritance
* Small Commits

> ## Design Patterns

* Factory
* Adapter
* Composite
* Decorator
* Dependency Injection
* Abstract Server
* Composition Root
* Builder
* Singleton
* Observer
* Strategy
* AAA (Arrange, Act, Assert)

> ## Metodologias e Designs

* TDD
* BDD
* Clean Architecture
* Reactive Programming
* GitFlow
* Modular Design
* Dependency Diagrams
* Use Cases

> ## Bibliotecas e Ferramentas

* Flutter
* Flutter Version Management
* Http
* Provider
* GetX
* Equatable
* Mockito
* Mocktail
* Faker
* Meta
* Git
* Flutter Secure Storage
* LocalStorage
* i18n
* Image Test Utils
* Network Image Mock

> ## Features do Dart/Flutter
* Null Safety
* Classes
* Abstract Classes
* Functions
* Constants
* Mixins
* Extensions
* Enums
* Exceptions
* Futures
* Streams
* Constructors
* Async/Await
* Stateless Widgets
* Stateful Widgets
* Material Theme
* Assets
* App Icon

> ## Features de Testes

* Testes Unitários
* Testes de Widgets
* Testes de Streams
* Testes de Integração
* Cobertura de Testes
* Test Doubles
* Mocks
* Stubs
* Spies