Skip to content
DevSchoofPublic

About

Calculadora de IMC desenvolvida em Flutter

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

📱 Calculadora de IMC - Flutter Profissional

Flutter Dart Pop!_OS

Uma aplicação de calculadora de Índice de Massa Corporal (IMC) desenvolvida em Flutter. O projeto foi evoluído de um script simples para uma arquitetura robusta baseada em Clean Architecture e TDD (Test-Driven Development).


🎯 Diferenciais Técnicos

Diferente de calculadoras convencionais, este projeto foca em qualidade de código e separação de responsabilidades:

  • Clean Architecture: Divisão clara entre a camada de apresentação (UI) e a camada de domínio (Regras de Negócio).
  • Decoupling: A interface do usuário não conhece as regras de cálculo, apenas consome um serviço de domínio.
  • Test-Driven Development (TDD): A lógica de cálculo possui cobertura de testes unitários, garantindo que os resultados da OMS sejam precisos e imunes a regressões.

🚀 Status do Desenvolvimento (Março/2026)

Este projeto está sendo construído em sprints, priorizando a robustez da lógica antes da interface.

  • Camada de Domínio: Entidades e Regras de Negócio (OMS).
  • Value Objects: Validação rigorosa de Peso e Altura (Weight/Height).
  • Testes de Unidade: 4 testes aprovados cobrindo Sucesso, Limites e Exceções.
  • Camada de Dados: Persistência local com SQLite (Próxima etapa).
  • Interface de Usuário: UI responsiva com Material Design 3.

🏗️ Estrutura do Projeto

Seguindo os princípios da Clean Architecture, o código foi organizado em:

lib/
 ├── domain/
 │    ├── entities/      # ImcModel: O modelo de dados puro
 │    ├── usecases/      # CalculateImcUsecase: Regras de negócio isoladas
 │    └── value_objects/ # Weight e Height: Validações de entrada (Peso/Altura)
 └── main.dart           # Camada de Apresentação (Flutter UI)

test/
 └── domain/             # Testes de Unidade automatizados (4 testes aprovados)

🧪 Como rodar os Testes

Para validar a integridade da lógica de cálculo no terminal (Pop!_OS):

fvm flutter test

🛠️ Tecnologias Utilizadas

  • Linguagem: Dart 3.x

  • Framework: Flutter

  • Gerenciador de Versão: FVM (Flutter Version Management)

  • Ambiente: VS Code no Pop!_OS Linux

🚀 Como Rodar o Projeto

Para executar este projeto localmente no seu ambiente (Linux/Windows/macOS), siga os passos abaixo:

Pré-requisitos

  • Ter o SDK do Flutter instalado (ou utilize o FVM).
  • Um simulador Android/iOS ou o navegador Chrome habilitado.

Passo a Passo

  1. Clonar o repositório:
    git clone https://github.com/DevSchoof/imccalc.git
    
  2. Entrar na pasta do projeto:
    cd imccalc
  3. Obter as dependências:
    fvm flutter pub get
  4. Executar o projeto:
    fvm flutter run

🤝 Contato


Desenvolvido por Eduardo Schoof Estudante de Análise e Desenvolvimento de Sistemas - IFSP LinkedIn | GitHub

About

Calculadora de IMC desenvolvida em Flutter

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages