Dit project bevat mijn voortgang en oefeningen uit de Udemy-cursus Kotlin: Develop Android Apps with Kotlin & Jetpack Compose. Ik heb zowel Jetpack Compose als de traditionele XML-layouts in Android Studio gebruikt om Android-apps te bouwen.
- Jetpack Compose: een open-source Kotlin-gebaseerd declaratief UI-framework voor Android, ontwikkeld door Google.
- Kotlin: is een cross-platform programmeertaal, ontworpen om naadloos samen te werken met Java.
- Android Studio Designer: WYSIWYG-editor voor XML-gebaseerde UI-ontwikkeling.
Hieronder een overzicht van de secties die ik heb doorlopen.
-
Introductie tot Kotlin & Android Studio
- In dit hoofdstuk heb ik de basis geleerd van Kotlin en Android Studio.
-
Android Studio Setup
- In dit hoofdstuk heb ik de setup van Android Studio gedaan.
-
Kotlin Fundamentals
- Tijdens deze hoofdstukjes heb ik geleerd over echt de basis functionaliteiten en de basis onderdelen van een Kotlin project.
- Ik heb geleerd over:
- Variabelen, data types, type conversion, string data types
- Arrays, arraylist, set en map functies
- De code van heel dit hoofdstuk kan je
hier
terug vinden. - Hieronder vindt je foto's van deeltjes die ik het interessants vond
-
Operators, Control Flow Statements en Loops
- Tijdens deze hoofdstukjes heb ik geleerd over de verschillende operatoren, Control Flow Statements en Loops binnen Kotlin.
- Ik heb geleerd over:
- Arithmetic, Assignment, Unary, Equality, Relational, Conditional en Precedence operatoren
- If-else (if ladder statement en nested if)
- When statement
- De code kan je
hier
terug vinden. - Hieronder vindt je foto's van deeltjes die ik het interessants vond.
-
Object Oriented Programming OOP
- Tijdens dit hoofdstuk heb ik geleerd over de basis van Object Oriented Programming.
- Ik heb geleerd over:
- Classes, Access Modifiers, Naming Convention
- Constructors, Encapsulation, Inheritance
- Function overriding, Abstract Classes, interfaces
- De code kan je
hier
terug vinden. - Hieronder vindt je foto's van deeltjes die ik het interessants vond.
-
Introduction Jetpack Compose
-
Tijdens dit hoofdstuk heb ik geleerd over Jetpack compose
-
Ik heb geleerd over:
- Wat is jetpack compose
- Waarom gebruiken we het:
- Minder code
- Versnelt het development process
- Android ecosystem
-
-
Jetpack Compose Components
-
Tijdens dit hoofdstuk heb ik geleerd over de basis componenten voor het maken van een Jetpack compose applicatie.
-
Ik heb geleerd over hoe je deze componenten gebruikt:
- Column, Box, Row
- Arrangements en Alignments
- Buttons, TextFields, Images, Checkbox
- Radio Buttons, Switch, Dropdown Menu
-
De code kan je
hier
terug vinden. -
Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
-
Dit programma laat een afbeelding zien en moet je in de inputfield je naam schrijven. Als je dan op "do your magic" knop duwt veranderd de foto en komt je naam in de label staan.
-
-
Jetpack Compose user Interactions
- Tijdens dit hoofdstuk heb ik geleerd over wanneer users handelingen doen in een app je bepaalde meldingen kan laten zien waar de user eventueel een keuze in moet maken of gewoon een medling met wat de user heeft gedaan.
- Ik heb geleerd over hoe je deze componenten gebruikt:
- Toast, Snackbar, Dialog Messages
- Top App Bar, Options Menu
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
- Dit programma heeft een knop als je erop drukt krijg je een dialog message waar je dan NO of YES kan kiezen.
-
Jetpack Compose Navigation
- Tijdens dit hoofdstuk heb ik geleerd over hoe je moet navigeren tussen verschillende pagina's in een app.
- Ik heb geleerd over hoe je deze componenten gebruikt:
- Jetpack Compose Navigation
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
- Dit programma moet je jouw naam en leeftijd ingeven en als je dan op send duwt ga je naar een andere pagina waar dan jouw naam en leeftijd op komt
-
Jetpack Compose Lists
- Tijdens dit hoofdstuk heb ik geleerd over data kunt laten zien op verschillende manieren. Zoals in een lijst horitzontaal of verticaal. En hoe je die data in een kaartje kunt laten zien.
- Ik heb geleerd over hoe je deze componenten gebruikt:
- Lazy Column
- Lazy Row en Lazy Grid
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
- Dit programma laat een lijst van allemaal landen zien. Wanneer je op het pijltje naast zo'n land duwt ga je naar een tweede pagina met meer gegevens van dat land.
-
Project 1
- Tijdens dit hoofdstuk heb ik mijn eerste grote project gemaakt waar de vorige hoofdstukken in een programma komen.
- Dit project is een ToDoList app waar je je eigen todolist kan maken.
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's de todolist.
- Dit is een foto van de filehelper die er voor zorgt dat alles goed wordt opgeslagen:
-
Publiceren van een app op Google Play
- Tijdens dit hoofdstuk heb ik geleerd hoe ik apps op de Google Play Store moet zetten.
- Op dit moment ben ik mijn apps erop aant zetten maar dat process duurt even.
- Op deze foto kan je al zien dat mijn app op de play store staat maar wel alleen voor internal tester nog niet voor het grote publiek. (zodra het openbaar sta zet ik de link hier)
-
Project 2
- Tijdens dit hoofdstuk heb ik mijn tweede grote project gemaakt waar de vorige hoofdstukken in een programma komen.
- Dit project is een Wiskunde spel, waar je verschillende wiskundige vragen krijgt en deze zo snel mogelijk goed moet beantwoorden
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's de Math Game.
- Dit is een foto van de logica van mijn spel:
- Android Studio Interface & XML UI
- In dit hoofdstuk heb ik geleerd dat je de apps ook op een andere manier kunt maken. Via de android studio designer. Zo kan je eigenlijk de verschillende componenten gewoon slepen, dat maakt het programmeren van de apps vele visueler dan weet je exact hoe je app eruit ziet voordat je de app opstart.
- Android Components
- Tijdens dit hoofdstuk heb ik geleerd over de basis android components maar nu via de designer.
- Ik heb geleerd over hoe je deze componenten gebruikt:
- Layouts, Constraint layout
- Textviews, buttons, editTexts
- ImageView, checkbox, radio buttons
- toggle buttons, spinner
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
- Dit is een voorbeeld van de designer in android studio
- Android User Interactions en Lists&Views
- Tijdens dit hoofdstuk heb ik geleerd over hoe de lists en views werken.
- Ik heb geleerd over hoe je deze componenten gebruikt:
- Layouts, Constraint layout
- Textviews, buttons, editTexts
- ImageView, checkbox, radio buttons
- toggle buttons, spinner
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
- Dit is een foto van de designer van het programma
- Android Intent en Lifecycles
-
Tijdens dit hoofdstuk heb ik geleerd over het implementeren van intents, lifecycles, services en receivers. Dit hoofdstuk is niet zo visueel maar meer backend hoe services opstarten en zich daarna gedragen.
-
Ik heb geleerd over hoe je deze componenten implementeert:
- Intent
- Application-Activity-Fragment Lifecycles
- Services
- Receivers
- Android View Binding
- View Binding is een functie in Android die het gebruik van findViewById() vervangt door type-veilige referenties naar UI-elementen. Dit vermindert boilerplate-code en voorkomt NullPointerException-fouten.
-
De code kan je
hier
terug vinden.
- Android SharedPreferences, Data Saving en Device Compatibility
- Tijdens deze hoofdstukjes heb ik geleerd over user data lokaal opslaagt. Ook hoe je verschillende talen kunt instellen in je programma.
- Ik heb geleerd over hoe je deze componenten implementeert:
- SharedPreferences class
- Saving Data local, calling back data
- Multiple language, screen sizes support
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's van de programma's die ik heb gemaakt tijdens dit hoofdstuk.
-
Project 3
- Tijdens dit hoofdstuk heb ik mijn derde grote project gemaakt waar de vorige hoofdstukken in een programma komen.
- Dit project is eigenlijk hetzelfde als project 1 alleen op een andere manier geprogrammeerd.
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's de todolist.
- Dit is een foto van de designer editor:
- Dit is een foto van de filehelper die er voor zorgt dat alles goed wordt opgeslagen:
-
Project 4
- Tijdens dit hoofdstuk heb ik mijn vierde grote project gemaakt waar de vorige hoofdstukken in een programma komen.
- Dit project is eigenlijk hetzelfde als project 2 alleen op een andere manier geprogrammeerd.
- De code kan je
hier
terug vinden. - Hieronder vindt je wat foto's de Math Game.
- Dit is een foto's van de designer editor van de verschillende pagina's:
- Dit zijn foto's van mijn programma zelf op de gsm.
- Dit zijn foto's van mijn code.
- Na het bekijken van alle video's en het invullen van alle quizjes en het maken van alle oefeningen/projecten heb ik een certificaat behaalt. Die kan je
hier
vinden of op de foto hieronder.
- Ik vond deze cursus zeer leuk omdat ik al zeer geïnteresseerd was in mobile development. Ik heb tijdens deze cursus een aantal zeer leuke projecten gemaakt die hopelijk binnenkort op de Google Play Store staan.