Frozen Coder's Easy Introduction to Modern Android Development
The purpose of this lecture is to explain the operating principles of Android libraries, centered on Android Jetpack, and to convey how to apply them to apps in an easy-to-understand manner.
First of all, I was so impressed that you explained not only how to apply the library, but also the evolution of the library. I was so happy to learn why Jetpack provides so many libraries and the reasons for providing them.
Before, I thought, "I have to study all of this and know how to use it well to get a job. Why is there so much to do?" It was a big realization for me, who had a headache memorizing and copying and pasting the usage instructions.
And especially, regarding Hilt, you explained advanced information that is not easy to understand even if you read the official documentation, such as the SOLID principles and how Hilt works, in an easy-to-understand way, which was very helpful. In this situation, I think I just referred to the code lab sample codes and attached them, thinking, "I have to attach this annotation, I have to attach this scope." But now I think I understand the principle, so thank you so much.
(Additional)
In addition, it was great to learn about the test code writing method that was not easy to do on my own (especially UI Test using Espresso) by adding not only architecture but also Kotlin kts application and test tasting part.
I will apply what I learned to the project I have been working on and make it my own!
5.0
hhyeok1026
100% enrolled
(A review after listening to all the lectures)
(I wrote it in a modified format (sound font) to make it easier to read, so please understand.)
- The 'Basics' section organized before entering the section was 'very'well' organized
- The instructor's know-how is included
- This is a great place for test lectures. I didn't understand the tests in Google Code Lab, but I learned a lot from this lecture.
(I was impressed by the basics section that previews the test section in the appendix. If you're worried about paying, take a look here.)
- The lectures are simple and easy to understand. It'll be easy to complete, and I'm happy that I'll have a completed app as a reference after listening to the lecture. (Since there are many parts that have already been used in code labs, it was easy for me because it felt like a review, but I don't know about others.)
(However, the fact that it is simple and easy can be both an advantage and a disadvantage -> It would be good for learners to supplement and look for parts that they don't understand or are lacking.)
- Google teachers must have created Jetpack to make apps easy... The content is quite extensive and it's not easy to study. You won't be able to get everything you want just by watching this lecture, and it seems like learners will have to search and study more.
- The lecture fee is definitely worth it, and if the company provides learning support, just pay without hesitation!
You should do it yourself with your own money, but it would be good to buy it during the Inflearn discount and study with a sunk cost(?) (In conclusion, I recommend the lecture. You will get more from listening than not listening, and if you pay and watch it instead of worrying about the lecture fee or lecture quality, you will probably study up to Section 3.)
- The instructor is kind and quick to answer questions.
- If there's an Android lecture that I need next time, I'm willing to buy it.
- There was a 3-star review on the course review, and I agree with some of it.
(The screen transition is applied to the architecture, and since the file is split a lot, it can't be helped, but you have to follow the code and look at it, but the code is covered by the editor, or you end up pressing the undo button a lot when the scroll transitions. It would be good to have a 5-second gap so that you can press the next video on YouTube? It would be good to have a 3-5-second gap so that you can stop the video after the code is completed. Also, the instructor seemed to speak a little fast, but I don't know if it's because I lack listening skills or because it's my first time taking an English class and library, but there were parts that I had to listen to repeatedly to understand. The speaking speed is a matter of the student's likes and dislikes, and... it would be difficult to control, so I think you can just listen to it repeatedly.)
I listened to a good lecture. Thank you.
5.0
춘식이
100% enrolled
I've used jetpack technologies once, but I wanted to know more about them, and I was worried because there was so much to learn, so I ended up taking this course. It was very helpful because the concepts were explained easily and accurately.
In particular, it was good that I could understand the overall flow by applying and refactoring all of the jetpack technologies within one project, rather than learning them in fragments.
I think it's also a big advantage that you answer questions quickly.
Thank you for the great course :)
What you will gain after the course
Modern Android Development Skills
Differences between MVC, MVP, and MVVM
Theory and Usage of Jetpack Library
Theory and Usage of Android Architecture Components
Test automation for Android code
Learn effectively through theory that summarizes only the core essentials, and learn in a balanced way by building an app right away in the hands-on practice! 💻
Hop on the Android Rocket and blast off! 🚀
Jetpack is a collection of libraries and tools created by Google to help developers build high-quality applications easily and quickly.
The best way to learn how to use Android libraries is to refer to the official documentation on Google Developers, but the explanations are often complex, and the Korean documentation is frequently not updated quickly.
So, I decided to create an easy-to-understand Android course. In this course, we will cover architecture patterns, how to use the Android Jetpack Library, dependency injection, and test automation.
If you have the same concerns, let's do it together 😎
Those who want to apply Jetpack and MVVM to Android apps
Google Developers' official documentation is difficult to understand.
Those who want to learn the Jetpack library systematically
I'm curious about the course ✨
Unique features of this course
We explain only the core concepts from the lengthy Google Developers official documentation using slides.
As soon as the explanation of the library is finished, we immediately apply it to building an app.
Theory and practice are balanced at nearly a 1:1 ratio, enabling well-rounded learning.
I have excluded as much code as possible that is not necessary for understanding the structure of the library.
It covers all the most essential Jetpack libraries related to building architecture.
Changes in students after taking the course 😁
🏃♀️ You will be able to understand the differences between MVC, MVP, and MVVM architectures and apply them to your apps.
🏃♀️ You will be able to understand the principles of Jetpack libraries and use them.
🏃♀️ You will be able to understand and apply Dependency Injection.
🏃♀️ You will learn the importance of test automation and how to test code in Android.
Learn one by one in each session 🔎
Section 0 <Introduction>
We will explain the differences between MVC, MVP, and MVVM architectures and explore the reasons why Jetpack was created.
Explains the principles and usage of AAC components: ViewBinding, ViewModel, Lifecycle, LiveData, and DataBinding. It also covers how to use the Repository pattern.
Section 2 <Creating a Book Search App>
We will build a book search app by applying the concepts learned in Section 1.
Section 3 <Supplementary Theory>
This section provides additional theoretical explanations for technologies used in Section 2 that are not part of AAC.
Section 4 <Jetpack Navigation>
Learn how to implement screen transitions by applying Jetpack Navigation to your app.
Section 5 <Jetpack Room>
Learn how to handle SQLite databases by applying Jetpack Room to your app.
Section 6 <Kotlin Flow>
Learn how to update the UI using Kotlin Flow instead of Live Data.
Section 7 <Jetpack DataStore>
Learn how to store simple data using Jetpack DataStore instead of Shared Preferences.
Section 8 <Jetpack Paging>
Learn how to build an infinitely scrolling data stream using Jetpack Paging.
Section 9 <Jetpack WorkManager>
Learn how to perform background tasks using Jetpack WorkManager.
Section 10 <Dagger-Hilt>
Explain why dependency injection is important and learn how to inject dependencies with Hilt.
Section 11 <Gradle with Kotlin script>
Learn how to write build.gradle scripts with Kotlin.
Section 12 <Conclusion>
Evaluate the MAD Score of the apps we have built so far.
Appendix <Jetpack Test>
Learn about test automation in Android.
Expected Q&A 💬
Q. Why should I take this course?
I will explain how to use the Jetpack library in a way that is very easy to understand.
Q. What are the features of the Jetpack Library?
It contains core functions that make Android structurally secure, and as it is managed by Google, it is an important library that ensures stable maintenance.
Q. Do you also explain Jetpack Compose?
Jetpack Compose has only recently become a stable version and is still an API undergoing many changes, so it is not covered in this course.
Q. Is there anything I need to prepare before taking the course?
Please install Android Studio on your computer. It would be even better if you study the basic syntax of Kotlin before starting.
Other Details
- Source Code 📑
In this course, we built three apps. The source code for the apps can be downloaded from my GitHub repository. (Click App Source Code)
App source code used in the Architecture Pattern and Android App Architecture lectures
App source code used in Part 1. Android Architecture Components theory
(A review after listening to all the lectures)
(I wrote it in a modified format (sound font) to make it easier to read, so please understand.)
- The 'Basics' section organized before entering the section was 'very'well' organized
- The instructor's know-how is included
- This is a great place for test lectures. I didn't understand the tests in Google Code Lab, but I learned a lot from this lecture.
(I was impressed by the basics section that previews the test section in the appendix. If you're worried about paying, take a look here.)
- The lectures are simple and easy to understand. It'll be easy to complete, and I'm happy that I'll have a completed app as a reference after listening to the lecture. (Since there are many parts that have already been used in code labs, it was easy for me because it felt like a review, but I don't know about others.)
(However, the fact that it is simple and easy can be both an advantage and a disadvantage -> It would be good for learners to supplement and look for parts that they don't understand or are lacking.)
- Google teachers must have created Jetpack to make apps easy... The content is quite extensive and it's not easy to study. You won't be able to get everything you want just by watching this lecture, and it seems like learners will have to search and study more.
- The lecture fee is definitely worth it, and if the company provides learning support, just pay without hesitation!
You should do it yourself with your own money, but it would be good to buy it during the Inflearn discount and study with a sunk cost(?) (In conclusion, I recommend the lecture. You will get more from listening than not listening, and if you pay and watch it instead of worrying about the lecture fee or lecture quality, you will probably study up to Section 3.)
- The instructor is kind and quick to answer questions.
- If there's an Android lecture that I need next time, I'm willing to buy it.
- There was a 3-star review on the course review, and I agree with some of it.
(The screen transition is applied to the architecture, and since the file is split a lot, it can't be helped, but you have to follow the code and look at it, but the code is covered by the editor, or you end up pressing the undo button a lot when the scroll transitions. It would be good to have a 5-second gap so that you can press the next video on YouTube? It would be good to have a 3-5-second gap so that you can stop the video after the code is completed. Also, the instructor seemed to speak a little fast, but I don't know if it's because I lack listening skills or because it's my first time taking an English class and library, but there were parts that I had to listen to repeatedly to understand. The speaking speed is a matter of the student's likes and dislikes, and... it would be difficult to control, so I think you can just listen to it repeatedly.)
I listened to a good lecture. Thank you.
Thank you, hhyeok1026, for your valuable review. I feel rewarded for making the course because you gave me such a good review. As you said, I think I didn't realize that the course transition speed was fast because I was an instructor. Thank you for explaining it in detail :)
I've used jetpack technologies once, but I wanted to know more about them, and I was worried because there was so much to learn, so I ended up taking this course. It was very helpful because the concepts were explained easily and accurately.
In particular, it was good that I could understand the overall flow by applying and refactoring all of the jetpack technologies within one project, rather than learning them in fragments.
I think it's also a big advantage that you answer questions quickly.
Thank you for the great course :)
The lecture was so good 👍
The code provided in the lecture did not have any errors.
It was good because it was different from other lectures in this part (not having to spend time catching errors).
It was good because the code process was skipped quickly, which saved time and prevented boredom.
In the process of refactoring by technology, it was good to organize the content by finding and using the technology on the blog.
Overall, I organized the information I knew, and I think I should listen to the lecture again and make the information I don't know mine.
Thank you for creating an Android lecture that is absolutely uncommon.
Thank you for watching, Ua. I'm glad that the lecture was helpful. You've organized the repository neatly, too. Thank you for your hard work studying :-)
This is one of the few really good lectures that kindly explains MAD.
There is a lot to study, so I will have to review it a lot, but if I understand this lecture properly, I think it will be a great help to me personally. I learned a lot 😊
Park Soo-bin, thank you for your valuable course review. I am glad that the efforts to make the lectures dense while improving quality were conveyed well :)
First of all, I was so impressed that you explained not only how to apply the library, but also the evolution of the library. I was so happy to learn why Jetpack provides so many libraries and the reasons for providing them.
Before, I thought, "I have to study all of this and know how to use it well to get a job. Why is there so much to do?" It was a big realization for me, who had a headache memorizing and copying and pasting the usage instructions.
And especially, regarding Hilt, you explained advanced information that is not easy to understand even if you read the official documentation, such as the SOLID principles and how Hilt works, in an easy-to-understand way, which was very helpful. In this situation, I think I just referred to the code lab sample codes and attached them, thinking, "I have to attach this annotation, I have to attach this scope." But now I think I understand the principle, so thank you so much.
(Additional)
In addition, it was great to learn about the test code writing method that was not easy to do on my own (especially UI Test using Espresso) by adding not only architecture but also Kotlin kts application and test tasting part.
I will apply what I learned to the project I have been working on and make it my own!
JI HUN LEE, thank you so much for your valuable review. I feel like my lecture intention was conveyed well, so I feel like it was worth the effort to teach :)