In this course, you will expand your Kotlin fluency by exploring the advanced concepts used by many Kotlin programmers. You will learn the more advanced features of Kotlin that are required to build a robust, functional Android app. Each week’s learning provides ample opportunity for you to practice and apply what you learn as you learn it. By the end of this course, you will have an array of advanced programming tools to help you engineer solutions for your future Kotlin projects, progressing you toward a better understanding of Android development. On successful completion of the course you will be able to: Implement an Android application with an Activity Implement advanced object-oriented features in Android Use mocks and fakes to perform unit testing in Android Use a Lambda expression to define a function as an object Use collection processing methods for multistep collection processing To be successful in this course, you require a foundational understanding of Kotlin programming fundamentals and of creating a UI in Android Studio.