开发过程中注意事项:
1 类型判断。
OC中调用方法时,不明确的类型要进行类型判断,避免找不到方法的崩溃发生。
id obj;
if ( [obj isKindOfClass:NSNumber.class] ) {
NSNumber *num = (NSNumber *)obj;
// ...
}
禁止:
id obj;
NSNumber *num = (NSNumber *)obj;
// ...
2 空指针判断
1 判断参数
如: addObject , stringByAppendingString。 对参数可能为nil进行判断。
2 判断返回值
如 : objectOrNilAtIndex 。 对返回值可能为nil 进行判断。
3 接口异常数据判断。对接口数据对象的使用要遵守不信任的原则。
4 Swift 可选值。
不允许在不经过任何判断的情况下,直接使用 ! 强制解包。
3 规范
1 单个函数代码行数不超过 60 行。
2 保证任意时刻Releaset版本的数据都是正式数据,不包含垃圾数据。
临时修改测试数据的时候, 添加DEBUG宏保来保证。
3 编译标记 (Swift)
1 // MARK:
公共接口 // MARK: - Public xxx
内部实现 // MARK: - Private xxx
2 // TODO:
3 // FIXME:
3 功能封装。
1 最少原则。尽可能暴露更少的接口和参数。
2 统一原则。开发过程中,相似的代码只存在一份,避免重复造轮子。使用工具库来避免。
4 辅助
开发测试时,及时解决听云Debug下出现的bug。
开发完成检查事项:
1 修复线上听云Bug,听云卡顿。
iOS代码规范:
1 时间戳。任何时间的相关的,都通过时间戳传递数据,只在UI展示的时候转换为字符串。
2 URL地址管理。 按现有规范,只在统一文件中编辑修改。
3 Swift 网络层使用 Moya. 数据解析使用原生Codable协议。弃用OC的MJExtension.
待补充。。