UsefulLinks
Computer Science
Mobile Application Development
Android App Development
1. Introduction to Android Development
2. Setting Up the Development Environment
3. Creating Your First Android Application
4. Core Application Components
5. User Interface Development
6. Advanced UI Components
7. Data Management and Storage
8. Application Architecture Patterns
9. Concurrency and Background Processing
10. Networking and Web Services
11. Device Features and Sensors
12. Permissions and Security
13. Testing and Quality Assurance
14. Performance Optimization
15. Debugging and Troubleshooting
16. App Distribution and Publishing
17. Advanced Topics
8.
Application Architecture Patterns
8.1.
Architecture Principles
8.1.1.
Separation of Concerns
8.1.2.
Single Responsibility
8.1.3.
Dependency Inversion
8.1.4.
Testability
8.2.
Model-View-ViewModel (MVVM)
8.2.1.
MVVM Concepts
8.2.2.
ViewModel Implementation
8.2.3.
Data Binding
8.2.4.
LiveData Integration
8.3.
Model-View-Presenter (MVP)
8.3.1.
MVP Concepts
8.3.2.
Presenter Implementation
8.3.3.
View Interface
8.3.4.
Model Layer
8.4.
Clean Architecture
8.4.1.
Architecture Layers
8.4.2.
Use Cases
8.4.3.
Repository Pattern
8.4.4.
Dependency Rules
8.5.
Android Architecture Components
8.5.1.
ViewModel
8.5.1.1.
ViewModel Lifecycle
8.5.1.2.
ViewModelProvider
8.5.1.3.
Saved State
8.5.1.4.
Sharing ViewModels
8.5.2.
LiveData
8.5.2.1.
Observable Pattern
8.5.2.2.
Lifecycle Awareness
8.5.2.3.
Transformations
8.5.2.4.
MediatorLiveData
8.5.3.
Data Binding
8.5.3.1.
Binding Expressions
8.5.3.2.
Two-way Data Binding
8.5.3.3.
Observable Fields
8.5.3.4.
Binding Adapters
8.5.4.
Navigation Component
8.5.5.
WorkManager
8.5.6.
Paging Library
8.6.
State Management
8.6.1.
UI State
8.6.2.
Application State
8.6.3.
State Persistence
8.6.4.
State Restoration
Previous
7. Data Management and Storage
Go to top
Next
9. Concurrency and Background Processing