0% ont trouvé ce document utile (0 vote)
6 vues7 pages

Stack DevOS

Le document présente un programme de formation structuré sur plusieurs semaines, abordant des thèmes clés du développement Android, incluant Kotlin, Jetpack Compose, MVVM, Room, Retrofit, et Firebase. Chaque semaine est divisée en jours avec des thèmes spécifiques, des contenus d'apprentissage et des exercices pratiques. À la fin, les participants réaliseront un projet complet et passeront par des étapes de tests et de déploiement.

Transféré par

josephangemerline99
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
6 vues7 pages

Stack DevOS

Le document présente un programme de formation structuré sur plusieurs semaines, abordant des thèmes clés du développement Android, incluant Kotlin, Jetpack Compose, MVVM, Room, Retrofit, et Firebase. Chaque semaine est divisée en jours avec des thèmes spécifiques, des contenus d'apprentissage et des exercices pratiques. À la fin, les participants réaliseront un projet complet et passeront par des étapes de tests et de déploiement.

Transféré par

josephangemerline99
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

SEMAINE 1 : FONDATIONS KOTLIN

Jour Thème Contenu Exercice

Variables (val vs var), types de base


Jour Bases du Programme de calcul
(Int, String, Boolean, Double),
1 langage d'IMC
opérateurs et conversions

Jour Structures de Conditions (if, when expression), Programme de notes


2 contrôle boucles (for, while), ranges et itérations scolaires avec when

Syntaxe des fonctions, paramètres par


Jour Fonctions et Fonctions de filtrage
défaut, fonctions d'ordre supérieur,
3 lambdas de liste
lambdas

Classes, constructeurs, propriétés, Modélisation d'un


Jour Classes et
héritage, classes abstraites, interfaces, système de
4 objets
data classes bibliothèque

Gestion d'une liste


Jour Null safety et Types nullable (? , ?: , !!), Listes, Sets,
d'étudiants avec
5 collections Maps et opérations fonctionnelles
filtres

Jour Coroutines Suspend functions, launch, async, Simulation d'appels


6 (intro) runBlocking, contextes et dispatchers réseau asynchrones

Application console de gestion de Mini-projet :


Jour Révision et
tâches avec classes, collections, Gestionnaire de
7 mini-projet
coroutines tâches

SEMAINE 2 : ANDROID STUDIO & JETPACK COMPOSE

Jour Thème Contenu Exercice

Installation Android Studio, création


Jour Installation et Premier projet "Hello
premier projet, structure du projet,
8 premier projet World"
émulateur

Jour Bases de @Composable, @Preview, Text, Carte de présentation


9 Jetpack Button, Column, Row, Box (nom, titre, contact)
Jour Thème Contenu Exercice

Compose

Jour Gestion de remember, mutableStateOf, state Compteur avec


10 l'état (State) hoisting, recomposition boutons +/-

Jour Composants Image, Icon, Card, Surface, Scaffold Écran d'accueil avec
11 essentiels (TopAppBar, FAB) barre d'outils

Navigation Compose, NavHost,


Jour Application avec 2
Navigation NavController, passage de
12 écrans et navigation
paramètres

Jour Thèmes et MaterialTheme, couleurs, Personnalisation du


13 Material Design typographie, thème clair/sombre thème de l'application

Jour Application de présentation Mini-projet : Portfolio


Mini-projet UI
14 personnelle multi-écrans personnel

SEMAINE 3 : ARCHITECTURE MVVM

Jour Thème Contenu Exercice

Diagramme
Jour Comprendre Théorie Model-View-ViewModel, cycle
d'architecture pour
15 MVVM de vie des activités et ViewModel
app de notes

Création d'une classe ViewModel,


Jour ViewModel Écran de profil avec
viewModel() dans Compose, exposition
16 pratique données persistantes
de l'état

StateFlow, MutableStateFlow,
Jour StateFlow et Formulaire avec
collectAsState(), différence avec
17 collecte validation temps réel
LiveData

Jour Gestion des événements uniques Affichage de messages


UI Events
18 (toast, navigation), Channels après action utilisateur

Jour Repository Qu'est-ce qu'un Repository, Création d'un


19 pattern centralisation des sources de données, repository avec
Jour Thème Contenu Exercice

injection manuelle données fictives

Tests unitaires du
Jour Tests JUnit, Turbine pour Flow, tests des
ViewModel de
20 unitaires états et événements
formulaire

Application de calculatrice avec Mini-projet :


Jour Mini-projet
historique, ViewModel, StateFlow, Calculatrice avec
21 MVVM
Repository historique

SEMAINE 4 : PERSISTANCE LOCALE (ROOM)

Jour Thème Contenu Exercice

Dépendances Gradle, Entités


Jour Introduction à Création d'une entité
(@Entity), DAO, Base de données
22 Room "Note" et son DAO
(@Database)

Insert, Update, Delete, Query, Implémentation de


Jour Opérations
Suspend functions pour toutes les opérations
23 CRUD
coroutines CRUD

Type converters (dates, enums), Ajout d'une relation


Jour Types
relations (One-to-Many, Many-to- entre Notes et
24 complexes
Many) Catégories

Intégration de Room
Jour Intégration avec Repository utilisant Room, Flow
dans le repository
25 Repository pour requêtes observables
existant

Schéma de base de données,


Jour Ajout d'un champ et test
Migrations migration safe, fallback
26 de migration
destructive

Preferences DataStore vs Proto


Jour Sauvegarde du thème
DataStore DataStore, stockage des
27 préféré utilisateur
préférences

Jour Mini-projet Application de notes complète Mini-projet : Application


28 Room avec CRUD, MVVM, DataStore de notes complète
SEMAINE 5 : RÉSEAU (RETROFIT)

Jour Thème Contenu Exercice

Dépendances (Retrofit,
Jour Introduction à Connexion à
Moshi/Gson), configuration client,
29 Retrofit JSONPlaceholder
interface API

GET avec paramètres (@Path,


Jour Gestion des Client API pour service
@Query), POST, PUT, DELETE,
30 requêtes météo
Headers

OkHttp Interceptors, Logging


Jour Intercepteurs Ajout de logging et
Interceptor, authentification Bearer
31 et logging gestion authentification
token

Try-catch, sealed classes pour


Jour Gestion des Gestion réseau avec
états (Loading, Success, Error),
32 erreurs états personnalisés
retry policies

Jour Coroutines et suspend functions, Flow avec Flux de données réseau


33 Flow réseau, combine, flatMapLatest avec Flow

Cache réseau avec OkHttp,


Jour Cache et offline Application avec mode
stratégies offline-first,
34 first hors ligne
WorkManager

Jour Mini-projet Application d'actualités avec API, Mini-projet : Lecteur


35 réseau cache, gestion erreurs d'actualités

SEMAINE 6 : FIREBASE

Jour Thème Contenu Exercice

Création projet Firebase, ajout à


Jour Configuration Configuration Firebase
l'application Android, configuration
36 Firebase dans une application
initiale
Jour Thème Contenu Exercice

Jour Email/password, Google Sign-In, Ajout d'authentification à


Authentication
37 gestion session, utilisateurs l'application

Structure NoSQL, collections,


Jour Cloud Firestore Stockage de données
documents, opérations CRUD
38 (1) utilisateur dans Firestore
basiques

Jour Cloud Firestore Requêtes avancées, listeners Application de chat en


39 (2) temps réel, transactions temps réel

Jour Upload/download images, gestion Ajout d'avatars


Cloud Storage
40 fichiers, sécurité utilisateur avec Storage

Rapports de crash, logs


Jour Crashlytics et Intégration de
personnalisés, événements
41 Analytics Crashlytics et Analytics
analytics

Jour Mini-projet Application complète avec auth, Mini-projet : Réseau


42 Firebase Firestore, Storage, Crashlytics social simple

SEMAINE 7 : PROJET COMPLET

Jour Thème Contenu Exercice

Définition des fonctionnalités, Application de gestion


Jour Conception du
wireframes, architecture, modèles de de tâches avec
43 projet
données équipes

Jour Mise en place Structure du projet, navigation, Configuration de la


44 base thème, dépendances base du projet

Module
Jour Firebase Auth, inscription,
Authentification d'authentification
45 connexion, profil utilisateur
complet

Jour Fonctionnalité Écran de liste, Room, repository, Affichage des tâches


46 principale (1) ViewModel avec Room

Jour Fonctionnalité Création/édition/suppression, CRUD complet avec


Jour Thème Contenu Exercice

47 principale (2) synchronisation avec Firestore synchronisation cloud

Ajout des
Jour Fonctionnalités Notifications push, partage de
fonctionnalités
48 avancées tâches, recherche
secondaires

Jour Animations, gestion des erreurs, Polissage de


Finitions UI
49 chargements, thème sombre l'interface utilisateur

SEMAINE 8 : TESTS, OPTIMISATION & DÉPLOIEMENT

Jour Thème Contenu Exercice

Jour Tests unitaires Tests ViewModel, Repository, Use Tests complets du


50 avancés Cases avec MockK projet

Jour Tests Tests Room, tests API avec Tests d'intégration


51 d'intégration MockWebServer du projet

Jour Espresso / Compose UI Testing, test Tests UI du parcours


Tests UI
52 des parcours utilisateur principal

Profiling mémoire, CPU, réduction Optimisation des


Jour Optimisation des
des recompositions, lancement points faibles
53 performances
application détectés

Jour Préparation au Génération APK/AAB, versioning, Build de production


54 déploiement signature, ProGuard/R8 signé

Jour Google Play Création fiche Play Store, captures Préparation des
55 Console d'écran, description, prix assets et description

Jour Déploiement et Publication en interne testing, Déploiement test et


56 rétrospective documentation, rétrospective bilan du projet

RÉCAPITULATIF DES TECHNOLOGIES PAR SEMAINE


Semaine Technologies couvertes

Semaine 1 Kotlin (variables, conditions, fonctions, classes, collections, coroutines basiques)

Semaine 2 Android Studio, Jetpack Compose, State, Navigation, Material Design

Semaine 3 MVVM, ViewModel, StateFlow, Repository, Tests unitaires

Semaine 4 Room, DataStore, Migrations, Relations SQLite

Semaine 5 Retrofit, OkHttp, APIs REST, Gestion d'erreurs, Cache

Semaine 6 Firebase Auth, Firestore, Storage, Crashlytics, Analytics

Semaine 7 Projet complet (intégration de toutes les technologies)

Semaine 8 Tests (unitaire, intégration, UI), Performance, Déploiement Play Store

Vous aimerez peut-être aussi