Android & Kotlin | Formation complète
- Description
- Programme
- Commentaires
Bienvenue dans la formation complète Android & Kotlin. Dans ce cours, vous allez apprendre à utiliser le langage Kotlin pour développer vos applications Android.
Que vous soyez débutant complet en programmation ou que vous êtes déjà intermédiaire, ce cours vous apprendra à réaliser des applications mobiles.
Pourquoi faire des applications Android en Kotlin ?
Google a annoncé en 2017 le support officiel de Kotlin sur Android. Java n’est plus le seul langage sur cette plateforme, vous pouvez maintenant écrire vos applications en utilisant Kotlin à 100% !
A la fin de ce cours, vous serez capable d’écrire des applications Android complexes, avec le support de l’affichage téléphone / tablette, le stockage de vos informations en base de données et des requêtes HTTP pour rendre votre application connectée.
Si vous avez envie de devenir un développeur mobile, Android est aujourd’hui l’OS le plus répandu sur les téléphones des utilisateurs. Il représente 85% de tout le marché. Si vous avez une idée d’application en tête, il y a 9 chances sur 10 pour que vos utilisateurs soient sur Android.
Structure du cours
Je pense que pour apprendre et maîtriser une nouvelle compétence, il faut la pratiquer. C’est pour cela que nous allons réaliser ensemble 2 projets d’applications complètes (Notes et Météo) avec toutes les explications théoriques qui vont autour.
Dans cette optique, j’ai structuré le cours de la manière suivante :
- Section(s) consacrée au langage Kotlin ;
- Section(s) consacrée à Android ;
- Projet d’application qui intègre toutes les notions précédemment abordées.
Nous allons répéter ce schéma, en augmentant progressivement la difficulté.
Projets d’applications
Les 2 projets que nous réaliserons sont de difficulté croissante, le premier étant l’application Note qui a les fonctionnalité suivantes :
- Afficher de notes dans une liste dynamique ;
- Éditer des notes dans un écran dédié ;
- Stocker les notes en fichier pour avoir de la persistance.
L’application suivante, Météo, est plus complexe car elle intègre plus de fonctionnalités :
- Récupérer des données météos depuis Internet avec le service OpenWeatherMap ;
- Supporter l’affichage sur téléphone et tablette ;
- Stocker les informations de villes en base de données.
Kotlin
Pour développer ces projets, nous devons apprendre à programmer en Kotlin ! Voici les grands thèmes que nous allons aborder pour découvrir le langage :
- Les types de variables et les déclarations ;
- Le contrôle de flux : if / else, for, while ;
- Définir et appeler des fonctions ;
- Créer des classes avec de l’héritage, des interfaces et des génériques.
Une fois que les bases auront été posées, nous passerons à des notions plus avancées comme :
- Le late init et le lazy init ;
- Les Data Class, Sealed Class, Enum Class ;
- Les high order functions et les lambdas ;
- Les fonctions d’extensions personnalisées et proposée par Kotlin (let, apply, use, etc.).
Android
Une fois que le langage est maîtrisé, nous basculons sur Android, à la découverte complète de cet OS :
- Définition d’un écran avec une Activity et un Layout ;
- Communication d’informations entre les écrans avec un Intent ;
- Afficher des listes d’éléments ;
- Afficher des Dialogs.
Après cela, on passe à la vitesse supérieur avec des fonctionnalités qui se trouveront dans la majorité de vos applications :
- Supporter l’affichage multi-device (téléphone / tablette) avec les Fragments ;
- Stocker des informations en base de données SQLite ;
- Faire des requêtes réseau avec la bibliothèque Retrofit ;
- Gérer les permissions de l’applications.
Bonus
Parce-qu’il n’y a pas que le code qui compte pour développer une application, nous allons également regarder des sujets qui sont autour du code :
- Installation de l’environnement de développement sur Windows, macOS, Linux ;
- Tour des fonctionnalités d’Android Studio pour se familiariser avec l’interface ;
- Comment débugger une application pour détecter les erreurs ;
- Explication de la procédure à suivre pour déployer votre application sur le Google Play Store
Un dernier mot
J’ai créé ce cours avec l’envie de partager ma passion pour le langage Kotlin et vous montrer à quel point cette nouvelle technologie fonctionne bien avec Android.
J’espère vous retrouver dans cette formation et échanger avec vous dans la section Questions / Réponses. Je suis très présent dans cette partie, qui est sans doute ma préféré : discuter avec vous de techno !
A très vite !
-
4Installation Android Studio sur WindowsVideo lesson
-
5Installation Android Studio sur Mac OSVideo lesson
-
6Installation Android Studio sur LinuxVideo lesson
-
7Créer le premier projet Hello WorldVideo lesson
-
8Découvrir Android StudioVideo lesson
-
9Préparation d'un émulateur AndroidVideo lesson
Sur Windows, lors du lancement de l'émulateur, si vous avez l'erreur suivante "Emulator: Process finished with exit code 0", vous devez peut-être mettre à jour l'outil Intel® Hardware Accelerated Execution Manager (Intel® HAXM).
Voici le lien de téléchargement : https://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager-intel-haxm
Merci à Arnaud S. de m'avoir signaler le problème et la la résolution qu'il a trouvé.
-
10Préparation d'un téléphone AndroidVideo lesson
-
11Définir une variableVideo lesson
-
12Les stringsVideo lesson
-
13Contrôle du flux : if, elseVideo lesson
-
14Contrôle du flux : whenVideo lesson
-
15Mutabilité et nullabilitéVideo lesson
-
16Variables, mutabilité, if / whenQuiz
-
17Les fonctionsVideo lesson
-
18Les tableauxVideo lesson
-
19Contrôle du flux : boucle forVideo lesson
-
20Contrôle de flux : boucle whileVideo lesson
-
21Les packagesVideo lesson
-
22tableaux, fonctions, forQuiz
-
23Explication POOVideo lesson
-
24Le constructeur de classeVideo lesson
-
25HéritageVideo lesson
-
26PolymorphismeVideo lesson
-
27POO et héritageQuiz
-
28EncapsulationVideo lesson
-
29Classe abstraiteVideo lesson
-
30InterfaceVideo lesson
-
31Cast et vérification de typeVideo lesson
-
32Data classVideo lesson
-
33Nested classVideo lesson
-
34Inner classVideo lesson
-
35Encapsulation et types de classesQuiz
-
36Les Generics 1/2Video lesson
-
37Les Generics 2/2Video lesson
-
38Les variables lateinitVideo lesson
-
39Companion ObjectVideo lesson
-
40Cohabitation avec JavaVideo lesson
-
41Generics, late init et companion objectQuiz
-
42Anatomie d'un projet AndroidVideo lesson
-
43Activity 1/2Video lesson
-
44Android évolue, les changementsVideo lesson
Voici les changements d'Android que vous pourrez rencontrer :
Dans une Activity / Fragment : findViewById(id) as Button ==> findViewById<Button>(id)
Pour la Toolbar, dans un fichier XML : ?attr/actionBarSize ==> ?android:attr/actionBarSize
Dans le build.gradle : compile ==> implementation
Migration des bibliothèques vers AndroidX : https://developer.android.com/jetpack/androidx/migrate/artifact-mappings
Si vous en repérez d'autres, faites moi signe !
-
45Migrer sur AndroidXVideo lesson
-
46Activity 2/2Video lesson
-
47LogsVideo lesson
-
48IntentVideo lesson
-
49ParcelableVideo lesson
-
50Activity, log et IntentQuiz
-
51Les dimensions sur AndroidVideo lesson
-
52Les layouts pratiques 1/2Video lesson
-
53Les layouts pratiques 2/2Video lesson
-
54Les composants UI de baseVideo lesson
-
55Dialog 1/2Video lesson
-
56Dialog 2/2Video lesson
-
57OptionMenuVideo lesson
-
58Thème d'applicationVideo lesson
-
59ToolbarVideo lesson
-
60RecyclerView 1/2Video lesson
-
61RecyclerView 2/2Video lesson
-
62Dimensions, layouts et RecyclerViewQuiz
-
63Gradle et les fichiers APKVideo lesson
-
67ArchitectureVideo lesson
-
68Démarrer le projet NotepadVideo lesson
-
69Classe modèle NoteVideo lesson
-
70Item de la liste NoteVideo lesson
-
71RecyclerView 1/2Video lesson
-
72RecyclerView 2/2Video lesson
-
73Afficher le détail d'une noteVideo lesson
-
74Toolbar de l'applicationVideo lesson
-
75OptionMenu de la liste des notesVideo lesson
-
76Editer une noteVideo lesson
-
77Créer une nouvelle noteVideo lesson
-
78Supprimer une note 1/2Video lesson
-
79Supprimer une note 2/2Video lesson
-
80Sauvegarder une note en fichierVideo lesson
-
81Charger les notes à partir de fichiersVideo lesson
-
82Snackbar de suppressionVideo lesson
![6751](https://academiaraqmya.gov.ma/wp-content/uploads/2021/04/1252422_4f23_2.jpg)