No description
- Kotlin 99.8%
- Java 0.2%
|
|
||
|---|---|---|
| .idea | ||
| .kotlin/errors | ||
| app | ||
| gradle | ||
| .gitignore | ||
| build.gradle.kts | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| README.md | ||
| settings.gradle.kts | ||
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)
- Usuário interage com a View (Compose)
- View chama uma função no ViewModel
- ViewModel chama o Repository
- Repository consulta a API (Retrofit) ou cache local
- DTO é convertido em Model
- ViewModel atualiza o estado
- View observa o estado e atualiza a UI automaticamente