BABaseProject,一个基于 MVVM 和 MVC 设计模式的基本项目框架,项目用到的各种类,各种封装,各种三方库的综合项目,欢迎大家使用!
开发中遇到的 性能问题:
cell的高度应该提前计算出来
cell的高度必须要先计算出每个子控件的frame,才能确定
如果在cell的set方法计算子控件的位置,会比较耗性能
解决方法:MVVM思想
M:模型
V:视图
VM:视图模型(模型包装视图模型,模型+模型对应视图的frame)
MVVM模式的 优点
MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点:
低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的”View”上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
可重用性。你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。
独立开发。开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计。
可测试。界面素来是比较难于测试的,而现在测试可以针对ViewModel来写