No description
  • Kotlin 99.8%
  • Java 0.2%
Find a file
Lucas Fernandes da Silva 9846406ad3 Merge branch 'release/v1.0.0' into 'master'
Release/v1.0.0

See merge request Lucas12310/tcc-barbearia-app!13
2025-11-18 02:04:33 +00:00
.idea finalizando a implementação dos graficos de pizza e barras 2025-10-17 22:20:46 -03:00
.kotlin/errors finalizando a implementação dos graficos de pizza e barras 2025-10-17 22:20:46 -03:00
app deixando preenchido as credenciais para otimizar tempo 2025-11-07 00:11:27 -03:00
gradle iniciando o projeto 2025-08-02 06:06:27 -03:00
.gitignore iniciando o projeto 2025-08-02 06:06:27 -03:00
build.gradle.kts finalizando a tela de login 2025-08-11 22:31:01 -03:00
gradle.properties finalizando a tela de login 2025-08-11 22:31:01 -03:00
gradlew iniciando o projeto 2025-08-02 06:06:27 -03:00
gradlew.bat iniciando o projeto 2025-08-02 06:06:27 -03:00
README.md atualizando o readme 2025-08-02 06:19:26 -03:00
settings.gradle.kts alterando a logo e o nome do app 2025-11-07 00:09:50 -03:00

BarbeariaApp

Aplicativo Android desenvolvido em Kotlin com Jetpack Compose, utilizando o padrão MVVM (Model-View-ViewModel) e Retrofit para comunicação com a API do TCC.


📂 Estrutura do Projeto (MVVM)

com.lucasfernandes.barbeariaapp
 ├─ data/
 │    ├─ model/
 │    ├─ network/
 │    │    └─ dto/
 │    └─ repository/
 │
 ├─ ui/
 │    ├─ theme/
 │    ├─ screen/
 │    │    └─ home/
 │    └─ components/
 │
 └─ util/

🔹 Função de cada camada

data/

Responsável por fornecer dados para a aplicação.

  • model/ → Entidades internas que representam os dados no app.
  • network/ → Retrofit, DTOs e endpoints da API.
  • repository/ → Camada intermediária que busca dados da API, converte DTOs em Models e fornece para o ViewModel.

ui/

Responsável por exibir os dados e interagir com o usuário.

  • screen/ → Cada tela do app.
    • View (Screen) → Exibe dados e captura interações do usuário.
    • ViewModel → Controla o estado da tela e chama os repositórios.
  • components/ → Composables reaproveitáveis.
  • theme/ → Configuração visual do app (cores, tipografia, shapes).

util/

  • Funções de extensão, formatadores de data e ferramentas auxiliares.
  • Opcional, só se precisar.

🔄 Fluxo de Dados (MVVM)

  1. Usuário interage com a View (Compose)
  2. View chama uma função no ViewModel
  3. ViewModel chama o Repository
  4. Repository consulta a API (Retrofit) ou cache local
  5. DTO é convertido em Model
  6. ViewModel atualiza o estado
  7. View observa o estado e atualiza a UI automaticamente