Skip to content

Stack technique NeekoApp

L’app mobile grand public repose sur Flutter, une techno mobile cross-platforme, performante et moderne. L’idée clef dans la manière de programmer est la maintenabilité. Il est donc question ici de clean archi , de séparation rigoureuse des métiers, et d’une arborescence features first.

Afin de garantir la maintenabilité, facilité les tests, et optimiser le temps de développement, chaques features doit respecter une séparation strict des métiers. Concrètement :

  • Déclarer un Models pour les données de la features.
  • Créer un Repository pour les appels post/get/socket au back.
  • Créer un Cubit par grosse action / page.
  • Créer et connecter les Screens (page ui) aux cubits uniquement.

Jamais un Screens ne doit appeler un Repository lui même, jamais il ne doit traiter des Errors lui même, il ne fait que lire et le cubit décide. Considérez tout code qui ne respecte pas ses règles comme du Legacy fait ainsi par contrainte de rapidité, ce n’est pas une bonne pratique et ce n’est pas à imiter.

Main

App mobile

Data

Logic & UI

via socket_service

via api_client

Injection

Injection

Repository

Back-end

Screen Dashboard

Cubit Profil

Screen Profil

Screen Mission

Cubit Mission

Models JSON