架构的重要性不言而喻,但是架构有一条原则:千万不要过度设计!
三层架构分别是:表示层、业务层、数据访问层。
三层架构是一种软件领域最普遍的分层式架构,而 MVC 是在三层架构的基础上设计的一种框架型架构,三层架构是一种宏观的概念,而 MVC 就是一种比较具体的三层架构的框架实现,我们在 MVC 的基础上把不同类别的代码文件进行分类就可以了,所以他们之间的关系可以用下图来表示:
其实 AndroID 开发本身默认的就是一套 MVC 实现。
VIEw 层:AndroID 开发中的 xml 布局就是我们的 VIEw 层,默认情况下也建议 VIEw 都尽量用 xml 实现,当然对于一些复杂的就需要我们自定义 VIEw 了,自定义 VIEw 同样也是属于 VIEw 层,只不过大多数时候还是 xml 布局用的最多;
Controller 层:毫无疑问,AndroID 默认也给我们提供了 Controller,就是 Activity & Fragment,仔细想想,是不是用户的交互事件,如输入、点击、滑动等都是在 Activity、Fragment 中处理的?关于这点有人认为 Activity & Fragment 属于 VIEw 层,这个我是不认可的,VIEw 应该专注界面的显示,Controller 处理用户的交互,提供给 VIEw 需要的数据,从而让 VIEw 正确的显示出来,而这都是 Activity & Fragment 的工作。
Model 层:AndroID 中对 VIEw 与 Controller 有了定义,其实没有对 Model 层做定义,而大部分架构都不会对 Model 层做定义,因为 Model 本身是跟业务相关,针对不同的业务模型,定义需要的数据模型与实体类,以及相关的业务逻辑处理,虽然 AndroID 没有明确定义 Model 层,但是我们在开发中都会定义一个专门的 model package 用来统一管理所有的 model 文件,如 User、Order、Chat 等。
三层架构是一种软件领域最普遍的分层式架构,而 MVC 是在三层架构的基础上设计的一种框架型架构,三层架构是一种宏观的概念,而 MVC 就是一种比较具体的三层架构的框架实现,我们在 MVC 的基础上把不同类别的代码文件进行分类就可以了,所以他们之间的关系可以用下图来表示:
总结
以上是内存溢出为你收集整理的架构浅谈之 MVC全部内容,希望文章能够帮你解决架构浅谈之 MVC所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)