Advanced Android App Architecture: Real-world app architecture in Kotlin 1.3
β Scribed by raywenderlich Tutorial Team, Yun Cheng, Aldo Olivares DomΓnguez
- Tongue
- English
- Leaves
- 250
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Table of Contents
What You Need
Book License
Book Source Code & Forums
About the Cover
Chapter 1: Introduction
What is this book?
Why is app architecture important?
Introducing the sample project
WeWatch sample app walkthrough
Where to go from here?
Chapter 2: Model View Controller
The Model-View-Controller pattern
Applying MVC to Android
WeWatch MVC code
Key points
Chapter 3: Testing MVC
Android Testing
Focusing on unit tests
Unit testing the Movie class
Unit testing an Android Activity
Why MVC makes unit testing hard
Key points
Where to go from here?
Chapter 4: Android Architecture Components
Using the Android Architecture Components
Key points
Where to go from here?
Chapter 5: Dependency Injection
What is a dependency?
Why dependencies can be problematic
Injecting dependencies
Dependency injection frameworks
Key points
Where to go from here?
Chapter 6: RxJava
What is the Observer pattern?
Getting to know RxJava
Observing events
Frequently Not Asked RxJava Questions
Key points
Where to go from here?
Chapter 7: Model View Presenter Theory
The Model-View-Presenter pattern
MVP advantages and concerns
Key points
Where to go from here?
Chapter 8: Model View Presenter Sample
Getting started
Applying MVP to the Movies app
The Main screen
The Add Movie screen
The Search Movie screen
Key points
Where to go from here?
Chapter 9: Testing MVP
Getting started
Getting to know Mockito
Testing the MainPresenter
Testing the AddMoviePresenter
Testing the SearchPresenter
Key points
Where to go from here?
Chapter 10: Model-View-ViewModel Theory
The Model-View-ViewModel pattern
MVVM by example
MVVM advantages and concerns
Key points
Where to go from here?
Chapter 11: MVVM Sample with data binding
What is data binding?
Getting Started
Implementing data binding
Challenge
Key points
Where to go from here?
Chapter 12: MVVM Sample with Android Architecture Components
Getting started
Current architecture layers
Creating a movie repository
Creating ViewModels
Using LiveData with ViewModels
MVVM architecture
Key points
Where to go from here?
Chapter 13: MVVM Testing
Getting started
Creating unit tests
Chapter 14: VIPER Theory
What is VIPER?
VIPER Advantages and Concerns
Questions you didn't think to ask
Key points
Where to go from here?
Chapter 15: VIPER Sample
Getting started
Implementing the Main Module
Implementing the AddMovie module
Implementing SearchMovie
Key points
Where to go from here?
Chapter 16: Testing VIPER
Getting started
Testing your Main presenter
Testing the AddMovie presenter
Testing SearchMovie Presenter
Chapter 17: MVI Theory
What is MVI?
MVI Advantages and Concerns
Frequently Not Asked MVI Questions
Key points
Where to go from here?
Chapter 18: MVI Sample
Getting started
Going Reactive
Creating Interactors and State
Creating the Presenters
Creating the Views
Final thoughts
Key points
Where to go from here?
Chapter 19: MVI Debugging
Getting started
Introducing Timber
Testing the MVI architecture
Key points
Where to go from here?
Conclusion
π SIMILAR VOLUMES
<h2>Apply Different Architectures to Your Codebase!</h2><p></p><p>Advanced iOS App Architecture guides you through building one real-world app written in different architectures to give you hands-on and practical experience working in different architectures. This book will also guide you through th
<span>Apply Different Architectures to Your Codebase!</span><p><span>Advanced iOS App Architecture guides you through building one real-world app written in different architectures to give you hands-on and practical experience working in different architectures. This book will also guide you through
Code
<p>Android is a complete set of software for mobile devices such as tablet computers, notebooks, smartphones, electronic book readers, set-top boxes, etc.<br>It contains a Linux-based Operating System, middleware, and key mobile applications.<br>Kotlin has developed continuously, not only as a langu