自定义类的封装规范

  • 头文件 尽量不要其他业务类,如果需要引入最好再实现文件中
  • 头文件 尽量不要暴露过多的属性,除非真有需求
  • 头文件 不准暴露第三方工具的类,属性,枚举等! 注意封装的概念

自定义控件

  • 头文件尽量不要过多引入其他的类,解耦合
  • 如果使用了第三方框架, 不要在头文件引入改类 切记, 不要暴露第三方组件的任何属性,枚举等等
  • 定义该类的常量,方便修改
  • 尽量不要引入其他项目中的类,除了一些必要的分类,业务类尽量不要引入
  • Frame布局 使用分类 UIView+Helper
  • 尽量不要暴露成员变量或者属性,除非有必要, 其余情况最好提供接口进行操作. 注意属性的可读

自定义工具类

  • 音视频 网络类 ,从语义上讲如果整个程序中存在一份,可以使用单例,不过注意这个限度
  • 网络类 等一些基础组件 尽量不要涉及到业务, 真正的网络组件,分为基础网络库, 业务网络工具等层次.
  • 封装的工具类 注意如果是分类可以实现的尽量迁移到分类中, 并且命名 最好以dd_ 开头, 例如-(void)dd_layoutWithDirection:(DDImageDirection)imageDirection ,之所以这样是因为,OC没有命名空间,后加载的分类可以覆盖掉前面的同名方法. 而且一旦和系统方法重名将造成巨大的bug

项目中需要注意的

  • 警示框,遮罩等,最好统一使用一个工具向外提供API,如果项目中 此类UI变动过多,也可以抽取出来.
  • 注意 驼峰命名原则,类,协议,代理属性 命名首字母大写,最好添加DD类前缀

你可能感兴趣的:(自定义类的封装规范)