Modernizing Your Android Applications

Modernizing Your Android Applications

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 4h 29m | 964 MB

Port your codebase from Java to Kotlin and enhance the UI of your app using advanced Android Architecture Components

Programming Android apps can be a complex process and lack of knowledge in architecting your app can result in spaghetti code and dead ends. In order to deliver an extendable, maintainable, and testable code base, you have to think about the architecture of your application from the very first stage of your development.

In this course, you’ll take an existing Android application build in Java and modernize it using the Kotlin language, seeing the importance of planning the architecture using SOLID principles and common Android Architecture using the MVP, MVC, and MVVM patterns.

Moving on, you’ll implement Life Cycle Aware Components, use the viewmodel LiveData framework, and perform data management and persistence with the Room persistence solution. You’ll see how Kotlin efficiently accelerates the development by improving the code base. With the advanced Architectural Components, you’ll not only be able to improve the performance but also enhance the UI of your application to a whole new level.

By the end of this course, you’ll have modernized your Android app using all the new features from coding it in Kotlin to implementing Architecture Components to enhancing the UI of your app, which gives you more control on your app and makes it easy to maintain.

We’ll be modernizing the Android application built on Java using Kotlin and common Android architecture patterns throughout the course.

What You Will Learn

  • Get an overview of old versus new practices in Android development and see how the new practices can help you become a better developer
  • Rebuild an Android application using these new practices as well using the new Jetpack group of libraries
  • Understand Kotlin and experience how simple it is to write code using it as opposed to Java
  • Overcome a lot of issues that were prevalent in the past using a variety of Jetpack libraries
  • Stay up to date with the latest and greatest methods to implement common use cases that you will come across when developing future apps
Table of Contents

WELCOME TO THE COOL NEW ANDROID
The Course Overview
Layout Design and Management
Rotations and Recreations
New Layouts
New Lists

MEASURE PERFORMANCE WITH CODE PROFILING
Old Code Profiling
New Code Profiling
Memory Leaks

CODDLING KOTLIN
Converting Java to Kotlin
Extension Functions
Operator Overload
Kotlin Android Extensions
KTX

DATA STORAGE AND MANAGEMENT WITH ROOM DB
Data Persistence the Old Way
Data Persistence the New Way
Inserting Data and Writing Queries
Updating and Deleting Data

LIFECYCLE, VIEWMODEL, AND LIVEDATA
Dynamic Data Loading
Handling Lifecycles Callbacks
Responding to State Changes
New Way to Respond to State Changes
Using ViewModel to Restore and Manage Data
Implementing LiveData

IMPLEMENTING DATA BINDING AND PAGING LIBRARIES
Exploring Data Binding
Adding Layouts and Binding Expressions
Bind Layout Views to Architecture Components
Implementing Paging Library
UI Components and Considerations
Data Components and Considerations

SCHEDULING TASKS USING WORKMANAGER API
Implementing WorkManager to Schedule Tasks
Running Tasks Under Specific Conditions
Setting Up Unique and Named Work Sequences