在一开始接触代码时,对架构这东西,真的根本没有意识,也没有特地去了解它,就是只有在学校时听过MVC,即model-view-Controller。但在实际的项目中,我就没有根据这个去写,纯粹就是为了完成业务。现在回头看自己当时前写的代码真的是惨不忍睹,真的是业务需要,想到哪写到哪,重复代码多,逻辑交叉多,层次乱...( ̄◇ ̄;) 那时候的代码真的是像个流浪汉。
随着深入了解代码,知道这水也不浅,慢慢摸索,在网上看了许多架构方面的资料,如MVC、MVVM等,也对自己开发中的项目做了大概分析和总结。画了以下的app的层次架构图:
对app 我主要分了这5个大层 appService、Controller、appSetting、The third party和resources。
其中最最重要的层次是appService和Controller,appService提供app所需的基本服务,而Controller是界面,这两个层相互作用。
对Controller,很多人都有做架构。这里也采用网上比较流行的几个词,进行功能来分**
presenter(页面逻辑处理)
interactor(页面间的交互)
mainView(页面视图self.view)
还有可能视图需要的model(结构转换)和类中一些ConstDefine(常量的定义)。
**
前3个模块之间通过protocol可以互相作用。这样模块之间的分工明确,耦合度也小。
对架构还不是非常自信,个人感觉,这样划分应该还行吧,实践下来这个模式还是很可靠的,开发效率也能提高,条理也很清楚的,而且安卓开发也是适用这种结构的,我想这张图抵得过很多东西了。