- List item
代码架构分层
一、服务层
1.数据
2.网络请求
3.缓存处理
二、业务层
三、表现层
代码分块
// MARK: - Member Variables// MARK: - Sturct & Lazy Properties// MARK: - Class LifeCycle// MARK: - Class PrivateMethod// MARK: - Class PublicMethod// MARK: - extension Event// MARK: - extension UI// MARK: - extension System Delegate&DataSource// MARK: - extension Private Delegate&DataSource
一、Member Variables
1.当前Controller需要的私有变量
2.当前Controller需要的全局或公开变量
二、Sturct & Lazy Properties
1.当前Controller需要的结构体
2.当前Controller需要的enum
3.当前Controller需要的懒加载对象等
三、Class LifeCycle
1.当前Controller声明周期函数
// lifecyle 1override func loadView() {super.loadView()}// lifecyle 2override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view.}// lifecyle 3override func viewWillAppear(_ animated: Bool) {super.viewWillAppear(animated)}// lifecyle 4override func viewWillLayoutSubviews() {super.viewWillLayoutSubviews()}// lifecyle 5override func updateViewConstraints() {super.updateViewConstraints()}// lifecyle 6override func viewDidLayoutSubviews() {super.viewDidLayoutSubviews()}// lifecyle 7override func viewDidAppear(_ animated: Bool) {super.viewDidAppear(animated)}// lifecyle 8override func viewWillDisappear(_ animated: Bool) {super.viewWillDisappear(animated)}// lifecyle 9override func viewDidDisappear(_ animated: Bool) {super.viewDidDisappear(animated)}
2.Controller布局常用的有xib、storyboard以及代码frame、代码snp布局
2.Controller在viewdidload中添加子view
3.xib、storyboad布局使用lifecycle 1读入页面
4.frame布局使用lifecycle 4进行布局
5.snp布局使用lifecycle 5进行布局
四、Class PrivateMethod
1.当前Controller需要的私有方法
五、Class PublicMethod
1.当前Controller供别的类调用的公开方法
六、extension Event
1.当前Controller声明的事件
七、extension UI
1.当前Controller声明的View
八、extension System Delegate&DataSource
1.当前Controller声明的系统代理方法
九、extension Private Delegate&DataSource
1.当前Controller声明的自定义代理方法
代码风格
一、命名
二、注释
三、缩进与空格规范
四、团队协作
说明:一个好的团队,理所当然有其严格的代码规范,好的代码不仅可以提高团队的开放效率,也更利于团队项目的后期维护,统一的代码风格,也是团队的核心,所以规范代码很有必要!
1.删除多余的空行 所有方法与方法之间空1行 所有代码块之间空1行
2.删除多余的注释,删除注释掉的代码,删除没有意义的注释
3.删除多余的方法,如果方法没有使用到,请删除它,如果方法没有执行任何业务逻辑,请删除它或者给出一定注释
4.删除未被使用的资源文件
5.添加必要的注释,所有.h 文件中的property 需要给出注释,所有自定义的方法需要给出注释,比较大的代码块需要给出注释,所有代码中出现的阿拉伯数字需要给出注释,程序中出现加密/解密 逻辑的操作地方,需要给出注释说明过程(无论是系统还是自定义)
6.整体代码风格需要统一,代码后面的”{“ 不需要单独占用一行,逻辑运算符 与“|” 代码之前空一格,“MARK -” 与下面的代码之前不要空行,遵循一般性的代码规范
loadview 和 viewdidload
oc代码规范