BABaseProject - MVVM 和 MVC 模式的项目框架


GPL
iOS
Objective-C

软件简介

BABaseProject,一个基于 MVVM 和 MVC 设计模式的基本项目框架,项目用到的各种类,各种封装,各种三方库的综合项目,欢迎大家使用!

性能问题 和 MVVM模式优点

  • 开发中遇到的 性能问题:

    • 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来写