|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/modern-android-app-architecture/
课程评论:没有评论
课程名称:现代安卓应用架构 课程概述:提升你的安卓开发技能,成为应用架构方面的专家。无论是构建小型应用还是大型多模块项目,掌握安卓应用架构是创建可扩展、可维护、高性能应用的关键。成为架构专家将为你未来的移动技术领导角色做好准备,使你能够做出重要的架构决策,并引导项目走向成功。此外,你还将学习重要的系统设计原则和模式,这将帮助你在移动系统设计面试中脱颖而出。 本课程由Stefan主讲,他自2011年以来便开始开发安卓应用,并在安卓、iOS和多平台应用的架构、设计和开发中积累了丰富的经验。课程将分享他全面的实践经验。 本课程强调应用的独特性,针对不同需求,可能需要不同的架构决策。课程旨在提供坚实的架构原则基础,比较流行的应用架构,并指导你根据具体需求选择合适的架构。 课程内容包括约8小时的按需视频,涵盖以下内容: 1. **编写清晰代码**:应用最佳实践和系统设计原则,如DRY和SOLID,创建可维护、可扩展的代码库。 2. **选择合适的模式(MVC、MVP、MVVM)**:学习模型-视图-控制器(MVC)、模型-视图-演示者(MVP)和模型-视图-视图模型(MVVM)之间的主要区别,并根据应用的规模、复杂性和团队需求选择合适的模式。 3. **实施清晰架构**:最小化应用生命周期维护成本,最大化开发者生产力。 4. **实施分层架构**:学习如何根据Google推荐的应用架构将关注点分离到数据、领域和UI层,以提高可维护性。 5. **使用安卓架构组件**:利用Jetpack库构建可扩展的应用,从UI到数据层,包括生命周期API、ViewModel API、LiveData & Flow、协程、SharedPreferences & DataStore、Room数据库、WorkManager API和Paging库。 6. **实施高效导航**:通过安卓导航组件,无缝处理复杂应用中的导航。 7. **应用依赖注入(DI)**:使用流行的DI框架如Dagger和Hilt,或服务定位框架如Kodein和Koin,编写更清晰、可测试的代码,提高依赖管理。 8. **掌握模块化**:将复杂的代码库组织成模块,基于层、特性或两者,以提高可扩展性,同时遵循组件内聚和组件耦合原则。 此课程旨在帮助学习者深入理解现代安卓应用架构,提升其开发技能。
Take your Android development skills to the next level and become an expert in app architecture. Whether building small apps or large, multimodule projects, mastering Android app architecture is key to creating scalable, maintainable, high-performing applications. Being an expert in app architecture will also prepare you for a Mobile Tech Lead role, as you will be able to make key architectural decisions, and guide projects toward success. You will also learn crucial system design principles and patterns that will help you excel in mobile system design interviews.Stefan started developing Android apps - almost from Android's birth - in 2011, and since then had to architect, design, and develop many challenging Android, iOS, and Multiplatform apps. In this course, he wants to share his comprehensive experience with you.Apps are unique - different apps have different requirements and may require different architectural decisions. This course is designed to provide a solid foundation of architectural principles, explain and compare popular app architectures, and guide in selecting the right architecture based on the given requirements. Despite the course being especially targeted at Android, most concepts also apply to iOS.About 8 hours of on-demand video content will cover what you need to know to master modern Android app architecture:Writing Clean Code: Apply best practices and system design principles such as DRY and SOLID to create maintainable, scalable codebases.Choosing the Right Pattern (MVC, MVP, MVVM): Learn the key differences between Model-View-Controller (MVC), Model-View-Presenter (MVP), and Model-View-ViewModel (MVVM) and choose the right pattern based on app size, complexity, and team needsImplementing Clean Architecture: Minimize app lifetime maintenance costs and maximize developer productivityImplementing Layered Architecture: Learn how to separate concerns into data, domain, and UI layers for better maintainability based on Google's recommended app architectureUsing Android Architecture Components: Build scalable apps using Jetpack libraries from the UI to the data layer such as the Lifecycle API, the ViewModel API, LiveData & Flow, Coroutines, SharedPreferences & DataStore, the Room database, the WorkManager API or the Paging libraryImplementing Efficient Navigation: Seamlessly handle navigation in complex apps with Android's navigation componentApplying Dependency Injection (DI): Use popular DI frameworks like Dagger and Hilt, or service locator frameworks such as Kodein and Koin to write cleaner, more testable code with better dependency managementMastering Modularization: Organize your complex codebase into modules, whether they are based on layers, features, or both for better scalability, respecting the principles of component cohesion and component coupling