- 头文件 尽量不要其他业务类,如果需要引入最好再实现文件中
- 头文件 尽量不要暴露过多的属性,除非真有需求
- 头文件 不准暴露第三方工具的类,属性,枚举等!
注意封装的概念
自定义控件
- 头文件尽量不要过多引入其他的类,解耦合
- 如果使用了第三方框架, 不要在头文件引入改类 切记, 不要暴露第三方组件的任何属性,枚举等等
- 定义该类的常量,方便修改
- 尽量不要引入其他项目中的类,除了一些必要的分类,业务类尽量不要引入
-
Frame
布局 使用分类UIView+Helper
- 尽量不要暴露成员变量或者属性,除非有必要, 其余情况最好提供接口进行操作. 注意属性的可读
自定义工具类
- 音视频 网络类 ,从语义上讲如果整个程序中存在一份,可以使用单例,不过注意这个限度
- 网络类 等一些基础组件 尽量不要涉及到业务, 真正的网络组件,分为基础网络库, 业务网络工具等层次.
- 封装的工具类 注意如果是分类可以实现的尽量迁移到分类中, 并且命名 最好以
dd_
开头, 例如-(void)dd_layoutWithDirection:(DDImageDirection)imageDirection
,之所以这样是因为,OC没有命名空间,后加载的分类可以覆盖掉前面的同名方法. 而且一旦和系统方法重名将造成巨大的bug
项目中需要注意的
- 警示框,遮罩等,最好统一使用一个工具向外提供API,如果项目中 此类UI变动过多,也可以抽取出来.
- 注意 驼峰命名原则,类,协议,代理属性 命名首字母大写,最好添加
DD
类前缀
网友评论