Published on

Android Mastery Course Handbook - Eighteen Dragon Subduing Palms by Dan Tech

Authors

No matter how profound or transformative, martial arts in this world only consist of two parts: Techniques and Internal Energy. Dan Tech, having wandered the martial world for nearly 10 years, with an inherently upright and righteous nature, and in the spirit of martial virtue and chivalry, I now share the complete set of 18 Techniques from the Android Mastery Course Handbook - Eighteen Dragon Subduing Palms with my fellow practitioners, so that we may diligently practice and innovate in our own journeys through the martial world.

The Eighteen Dragon Subduing Palms is a supremely masculine and powerful martial art. I hope that you heroes, champions, and fellow practitioners will study and practice diligently. Take these skills and travel the martial world, upholding justice and righteousness. My greatest goal is to ensure that all who have mastered this handbook earn enough silver to provide for their families, ensuring the happiness of their parents and spouses.

And if possible, brothers, please share this handbook, along with your own martial insights, with fellow practitioners throughout this martial world. If only one prodigy can be found in a thousand people, and one hero in ten thousand, then I want to bring this handbook to thousands, tens of thousands of people to find heroes, to find prodigies for our country, for this world.

Chapter 1: Kotlin 101

In Chapter 1, you will learn about the definitions of the Kotlin language, from basic to advanced. How to use the Kotlin language effectively, and will end the chapter by making a Bao, Búa, Kéo (Paper, Rock, Scissors) Game project.

  • Android Kotlin 101: Basic Knowledge
  • Android Kotlin 101: Writing the First Program
  • Android Kotlin 101: Rock Paper Scissors Game

Chapter 2: Data Structures & Algorithms with Kotlin

In this chapter, we want to provide you brothers with a basic but extremely important area of knowledge for a Software Engineer's career: Data Structures & Algorithms using the Kotlin language. Throughout the chapter are knowledge of Algorithm Complexity, how to effectively use common Data Structures, and illustrative examples by solving Leetcode exercises.

  • Data Structures with Kotlin: Essential Knowledge
  • Data Structures with Kotlin: Leetcode (P1)
  • Data Structures with Kotlin: Leetcode (P2)

Chapter 3: Git 101

In this chapter, we learn about the Git tool used to manage project source code. To be able to travel the martial world in this era, you brothers must be proficient in GIT.

  • Git 101: All the Knowledge You Need to Become a Software Engineer

Chapter 4: Android Fundamentals

In this chapter, you will learn about the important components that make up an Android application and practice writing code with those components: Activity, Service, Content Provider, Broadcast Receiver, Local file system, Android Permission, ... Learn and experience!

  • Android Fundamentals: Essential Knowledge
  • Android Fundamentals: Coding Practice

Chapter 5: Android Lifecycle

In this chapter, we learn about the lifecycle of components in an Android application. Understand the meaning of the lifecycle event callbacks of Application Lifecycle, Activity Lifecycle, Fragment Lifecycle, and how to use them effectively.

  • Android Lifecycle: Essential Knowledge
  • Android Lifecycle: Differences Between Ways to Launch Fragments in Android Applications

Chapter 6: Android Thread

We have mastered one-third of the handbook; it is time to upgrade our martial arts to a new level. Let's get acquainted with the concept of Thread in Android. This will be an indispensable, unforgettable area of knowledge for any Software Engineer in this martial world.

  • Android Thread: Essential Knowledge
  • Android Thread: Looper, Handler, HandlerThread, Executor
  • Android Thread: RxJava Knowledge
  • Android Thread: RxJava and Backpressure
  • Android Thread: Kotlin Coroutines Knowledge
  • Android Thread: Clock Application Coding Practice

Chapter 7: Android App Memory

After writing an Android application, what we need to care about next is managing memory resources because this is a limited resource of each device and needs to be managed strictly and effectively. Your proficiency with Memory will determine your confidence in approaching problems and developing features.

  • Android App Memory: Essential Knowledge
  • Android App Memory: Guide to Using Tools to Find Leaks Effectively

Chapter 8: Architecture Pattern

This chapter provides a full range of perspectives, explaining the differences between the software architectures used in Android that we need to understand clearly. Proficiency can help in designing clear, coherent code and the ability to architect a large system that many people can work on without conflicts.

  • Android Architecture Pattern: Essential Knowledge

Chapter 9: Android ViewModel

After mastering and understanding the nature of Architecture Pattern, we delve into ViewModel and how to use it effectively. The goal is to use it for MVVM architecture with customizations for specific cases.

  • Android ViewModel: Essential Knowledge and Accompanying Tools

Chapter 10: Android View System

It's time to delve into the Android View System and build a million-dollar application. Let's go!!!

  • Android View System: Basic Knowledge
  • Android View System: Scrolling View Knowledge
  • Android View System: Spotify Application Interface Practice

Chapter 11: Jetpack Navigation

When we have built complex View systems, we need a tool to support navigation between screens. Jetpack Navigation is a suitable solution for this problem. Learn and feel its convenience and power.

  • Android Jetpack Navigation: Essential Knowledge
  • Tobe updated

Chapter 12: Android Room Database

When the application has a beautiful, perfect shell, think about how to store data on the device. Room Database solves this problem neatly and beautifully. Let's learn, brothers!

  • Android Room Database: Essential Knowledge
  • Tobe Updated

Chapter 13: Android Dependency Injection

We can almost build a complete application from start to finish. But to be able to manage source code easily and coherently, we need more than just code logic. Dependency Injection solves the problem of dependencies between classes and modules in the project. Learn and master it!

  • Android Dependency Injection: Essential Knowledge
  • Tobe updated

Chapter 14: Android Unit Test

Hmm, it seems like we have full capability to make apps, right? But in a large environment, coding alone is not enough; we also need tests. Unit Test - the nightmare of Devs is here. Master Unit Test, deploy it fully, and sweet success will come to you. Keep going!

  • Android Unit Test: Essential Knowledge
  • TBD

Chapter 15: TODOs Application

Under construction

Chapter 16: Android Network

Under construction

Chapter 17: Krypto News Application

Under construction

Chapter 18: Android Interview Questions

Under construction