Android Development Course - Build Native Apps with Kotlin Tutorial
via freeCodeCamp
-
10
-
- Write review
Overview
Syllabus
) Introduction.
) Model View ViewModel (MVVM) Architecture fundamentals and variations.
) Is MVVM the perfect architecture?.
) Overview of MVVM with whiteboard example.
) Pros and Cons of MVVM.
) Package structure.
) How to create Vector Drawables.
) Difference between Raster (PNG, JPG, BMP) and Vector (SVG) Images?.
) Uh Oh!.
) How to use Inkscape to create an SVG from a BMP/PNG.
) How to convert an SVG into an Android Studio Vector Asset.
) How to create simple animations using animation lists and fade animations.
) Material Design User Interface using ConstraintLayout and Styles.
) Building an XML Layout using ConstraintLayout.
) Using ConstraintLayout Chains.
) Some tips on using Styles to create a material design look.
) How to use (and when not to use) the Android Navigation Component from Android Jetpack.
) Adding Safe Args to gradle.
) Building a Navigation Graph using the Navigation Editor (XML).
) Creating a NavHostFragment to host the Navigation Component and adding it to an Activity.
) How to actually change destinations in our Fragments using the Navigation Component (with safe args).
) Setting up Fragments as Views in MVVM using Kotlin Synthetic Properties.
) Starting point.
) Importing an XML layout to an Activity/Fragment using Kotlin Synthetic Properties.
) How to reference Views in the Fragment using synthetic properties.
) Adding onClickListener to our views.
) Intercepting OnBackPressed (NOTE: The API for this has changed since making this video. I have updated the Repository appropriately).
) How to observe the ViewModel using LiveData callbacks.
) ViewModels in MVVM with Kotlin Coroutines for Concurrency.
) A look at my BaseViewModel class which contains part of the Coroutines Implementation (Coroutine Scope).
) Starting point.
) Handling events from the View in the ViewModel.
) Using the launch Coroutine Builder to access data.
) How to update the MutableLiveData fields to publish data to the View.
) Modern RecyclerView implementation using LiveData to handle ItemTouchListener() callbacks.
) Overview of the RecyclerView within the XML View with LinearLayoutManager.
) What does the DiffUtil do?.
) A look at the source code of ListAdapter to better understand how it works.
) Writing the RecyclerView.ViewHolder class.
) Why is it actually called a RecyclerView? What gets Recycled?.
) Writing our RecyclerView.ListAdapter.
) How to use a MutableLiveData object to publish events from the onClickListener in the ViewHolders.
) Overview of the Fragment which manages the RecyclerView, and how to avoid memory leaks!.
) FirebaseAuth for User Authentication using Google Sign In.
) How to set up a new Firebase Project using Android Studio.
) Enabling Authentication (FirebaseAuth) in the Firebase Console.
) Setting up a debug signing certificate for your App in Firebase.
) Gradle Configurations for FirebaseAuth.
) Setting up GoogleSignInProvider.
) Handling the result in onActivityResult.
) Back FirebaseAuth Implementation using Coroutines.
) Local Database with Room Persistence Library and Coroutines.
) Entities and Primary Keys in Room.
) Setting up a Dao (Data Access Object) in Room.
) Overview of RoomDatabase implementation.
) How to build your Database and get a reference to you Dao.
) How to get data in and out of the Dao using suspend functions.
) Setting up a Local and Remote Database using Firebase's Firestore NoSQL library.
) Communicating with Firestore using a Repository, with Coroutines.
) Dependency Injection using an AndroidViewModel, and ViewModelProvider.Factory.
) What is dependency injection in simple terms?.
) Implementing Dependency Injection using AndroidViewModel.
) Quick look at using a ViewModelProvider.Factory to create our ViewModel with the Injected Repository.
) How to use our Dependency Injector from within a Fragment or Activity.
Taught by
freeCodeCamp.org