一般开发项目都会随着时间业务功能,UI功能,数据处理功能等越来越多,交互变得越来越多,需要添加的代码也会越来越多,代码也慢慢会由简单变的繁琐,MVC也已经不再满足需求,尤其运用MVC后期你看着controller中各种烦杂的逻辑处理,功能处理,UI处理你自己都会感觉头痛,自己写代码的时候注视文字,代码排版结构也变的很混乱,你开始慢慢的整理代码树立属于自己的代码结构,自己努力把每一单独模块进行分化,这个时候架构的概念就越来越明细表了。好了废话不多说了,讲一下基础框架吧。
MVC:“M”,“V”,“C”三者之间相互绑定,就像一个铁三角一样,这也是最节省的代码的一种方式吧,但是也是最为凌乱的一种方式,尤其是项目在后期,你会发现即使你的逻辑处理,性能优化各方面都very beautiful。但是不可否认你的日子过的一点都不好,“C”太过肿大,导致排除定位都变的复杂,浪费时间。
MVVM:“M”,“V”,“VM”,这个框架我真的已经不想去不想解释了,也接触过一下MVVM框架的项目,也有自己的可取之处,但是“VM”的双向绑定,导致MVVM和MVC有着相同的缺点,代码耦合度太高,虽然相对于MVC可以分化更多的功能模块,但是至少个人不是特别喜欢耦合性太强的东西,在我眼里1就是1 2就是2不需要彼此关联交互。
MVP:MVP现在应该是移动端最流行的一个框架了,如果让我接手一个项目,希望他是什么框架,我只能MVP,清晰的代码板面,低耦合,尤其是一些大项目中,不会出现一个文件代码几百行甚至更多情况,梳理起来很方便,低耦合也可以不用过多的考虑太多的逻辑交互,MVP实现的一个过程其实归根结底就是一个解耦过程。
一般就一个项目基本可以分为UI逻辑,业务功能逻辑,数据处理逻辑,而我门运用MVP框架完全可以将其分化成不同的模块处理不同功能。 每一个“P”都有自己公用,避免了因为代码太多耦合性太高注释文字编写麻烦,代码版面过乱的问题在MVP的框架中也很少出现,因为一个版面最多也就200行左右的代码,没有备注文字也可以梳理的差不多了。
就这么多只是随便说说,好好学习天天向上。
网友评论