Android Course Plan
This is an Android Course that I think that can be used to get you up to speed with Android Development. This is a work in progress and will most likely change as time goes on.
Module 0:
Git Basics
What is git?
What is a Reposoity?
How do you commit?
What is a branch?
GitHub
What is Github?
How do you create a Github account.
What is a Reposoity?
IDE Basics
What is an IDE?
What IDE will we be using?
What is an Emulator?
Module 1:
Kotlin Basics
What is Kotlin?
Variables and Lists
What are the Different basic types used in Kotlin?
What is a list and array?
Logic
What is an if else statement?
What is a when statement?
Loops
What is a loop?
What are the different kind of loops you can do in kotlin?
What is a for loop?
What is a While loop?
Classes:
What is a class?
What is a data class?
Module 2:
Android Basics
What is android?
Components
What is an Activity?
What is a Fragment?
What is a Service?
Intents
What is an Intent?
What is a Bundle?
Views and Layouts
What is a Layout?
What different kinds of Layouts are there?
What is a View?
What different kinds of View?
How to build a UI using xml layouts?
Module 3
List Views
What is a RecyclerView?
What is a LayoutManager and what is it used for?
What is an Adapter and How is it used to fill data in a ?
Bonus How to use DiffUtil and ListAdpater to be more efficient?
Module 4
Networking using an api.
What is a HttpClient?
How to make a get call?
What is Retrofit?
What is Picasso / Glide / Coil / Fresco?
Module 5
Co-Routines
What is a co-routine?
What is a Dispatcher?
What is a launch call?
What is the async?
Module 5
ViewModels
What is a ViewModel?
What is LiveData?
What is StateFlow?
What is a SharedFlow?
Module 5
Create an App using the DogApi.
- Create a Screen what has a list of images. (Single List or Grid) a. Use a networking library to make a call to the dog ceo api to get a list of dogs. b. Take that list of dogs and present them on the screen. c. When a user clicks on an image open that image to its on screen.
Helpful links.
- d.android.com
Jetpack libraries
Retrofit
ImageLoading Libraries
- Picasso
- Glide - https://bumptech.github.io/glide/ | https://github.com/bumptech/glide
- Fresco
Dog Ceo
- https://dog.ceo/dog-api/ <- base url for the dog ceo api
- https://dog.ceo/dog-api/breeds-list <- List of all breeds
- https://dog.ceo/api/breed/husky/images/random/25 <- api call for a list of 25 huskies