|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/master-clean-architecture-in-flutter-for-beginners/
课程评论:没有评论
课程名称:在Flutter应用中实现清晰架构 课程概述:清晰架构是一种模块化系统的蓝图,严格遵循关注点分离的设计原则。这种架构风格关注于将软件分层,以简化系统的开发和维护。当各层严格分离时,组件可以重复使用,且可以独立开发和更新。在本课程中,您将从零开始构建整个应用程序,采用清晰架构和Bloc及Cubit状态管理。此外,您将使用两个不同的包——Http和Dio来集成REST API。您还将学习依赖注入,使用get_it包简化这一过程。课程将涵盖真实世界应用程序的文件结构,以及如何使代码可扩展和模块化。 清晰架构将Flutter项目分为三个主要层次: 1. **表示层**:包含从存储库访问应用数据的代码,以及状态管理的代码,如提供者、BLoC等。 2. **领域层**:这是清晰架构中最深层的部分,包含业务逻辑应用的代码,如实体和用例。 3. **数据层**:位于最外层,包含数据来源的代码,如消费REST API、访问本地数据库、Firebase或其他源。此外,该层通常包含构建用户界面的平台代码(小部件)。 通过本课程,您将掌握清晰架构在Flutter开发中的应用,提升您的开发技能。
Clean Architecture is the blueprint for a modular system, which strictly follows the design principle called separation of concerns. More specifically, this style of architecture focuses on dividing software into layers, to simplify the development and maintenance of the system itself. When layers are well-separated, individual pieces can be reused, as well as developed and updated independently.In this course you will make an entire application from scratch using Clean Architecture and Bloc and Cubit state management. You will also incorporate REST API using two different packages Http and Dio. And you will learn about Dependency Injection and how to make it simple using get_it package. You will learn about file structure of a real world application and how to make your code scalable and modular.The clean architecture will divide the Flutter project into 3 main layers, namely:Presentation LayerThe presentation layer consists of the code to access the data of the app from a repository. Also, there is the code for state management such as providers, BLoC, and so on.Domain LayerThe domain layer is the deepest in the clean architecture. This layer contains the code for business logic applications such as entities and use cases.Data layerThe data layer is located at the outermost layer. This layer consists of data source code such as consume Rest API, access to the local database, Firebase, or other sources. Also, on this layer, there is usually the platform code that builds up the UI (widgets).