Category让你的代码拥有美感

作者: moonCoder | 来源:发表于2017-03-23 22:25 被阅读339次

什么是Category

Category模式用于向已经存在的类添加方法从而达到扩展已有类的目的,在很多情形下Category也是比创建子类更优的选择。新添加的方法同样也会被被扩展的类的所有子类自动继承。当知道已有类中某个方法有BUG,但是这个类是以库的形式存在的,我们无法直接修改源代码的时候,Category也可以用于替代这个已有类中某个方法的实体,从而达到修复BUG的目的。然而却没有什么便捷的途径可以去调用已有类中原有的那个被替换掉方法实体了。需要注意的是,当准备有Category来替换某一个方法的时候,一定要保证实现原来方法的所有功能,否则这种替代就是没有意义而且会引起新的BUG。和子类不同的是,Category不能用于向被扩展类添加实例变量。Category通常作为一种组织框架代码的工具来使用。

今天要说的是Category应用到项目架构中

因为MVC的弊端就是不管怎样都会胖一端,很容易就使Controller或者View或者Model的代码量变的很庞大,导致很难维护,而且不清真。

我的做法是用category把数据处理层抽离出来,不多说上代码。

在建完Model后,添加Model的category,然后把所有的数据处理全放这。

这样做之后的效果就是:

是不是很干净,很清真。是不是有种MVVM的感觉,而且是原生自带的。大家快把category用起来吧让你的代码优美起来。

而且大家在项目中可以使用category建立自己的UI组件库,不需要使用继承。还可以在OC原有的基础类上各种扩展,让冗余代码不在出现。

category让你找到OC的美!!!

相关文章

  • Category让你的代码拥有美感

    什么是Category Category模式用于向已经存在的类添加方法从而达到扩展已有类的目的,在很多情形下Cat...

  • iOS小知识点02

    iOS分类(Category) Category的作用:为没有源代码的类添加方法。使用Category需要注意的点...

  • iOS开发小技巧及小知识点

    1、Category(类别) 什么是Category 1、Category可以在不获悉不改变原代码的情况下向已有的...

  • Runtime(3)--分类Category

    分类Category 在平日编程中或阅读第三方代码时,category可以说是无处不在。category也可以说是...

  • 让你的Python代码拥有类型提示

    Python是一种动态类型语言,这意味着我们在编写代码的时候更为自由,但是与此同时IDE无法向静态类型语言那样分析...

  • 零点法计算周期

    我承认这程序写的毫无美感可言,可是ncl这种语言就不配拥有美感。

  • 谈谈Category和Extension

    开篇 在平时的项目中时常可以用到Category,在研究别人的代码时遇见Category和Extension也是一...

  • 笔记-关联对象

    目录 面试题 伪代码实现 Category添加属性的几种用法 Category为什么不能添加成员变量 底层源码解读...

  • 通过Runtime源码了解关联对象的实现

    原文链接 在iOS开发中,Category是经常使用到的一个特性,合理的使用Category能够减少繁琐代码,提高...

  • 如何让自家庭院,拥有中式美感?

    “这个庭院,不知怎么撞到了我心灵深处连自己也不大知道的某个层面。这个层面好像并不是在我的有生之年培植起来的,而要早...

网友评论

本文标题:Category让你的代码拥有美感

本文链接:https://www.haomeiwen.com/subject/wratottx.html