View 层代码结构规范

2017/07/10 iOS

针对 View 层的架构设计,还是要做好三点:

  • 代码规范
  • 架构模式
  • 工具集

View 层的工具集主要还是集中在如何对 View 进行布局,以及一些特定的 View,比如带搜索提示的搜索框这种。各自实现或者使用 CocoaPods 里现成的都不是很难。

关于 View 的代码规范

目的:

  1. 提高业务方 View 层的可读性可维护性
  2. 防止业务代码对架构产生腐蚀
  3. 保持架构发展的方向不轻易被不合理的意见所左右
  4. 确保传承
#pragma mark - Init
/* init, dealloc */


#pragma mark - Life cycle
- (void)viewDidLoad {
    [super viewDidLoad];

}

#pragma mark - Delegate


#pragma mark - Event response
/* 所有button、gestureRecognizer的响应事件都放在这个区域里面 */


#pragma mark - Private methods
/* 关于private methods,正常情况下ViewController里面不应该写,
 要么把它写成一个category,要么把他做成一个模块,哪怕这个模块只有一个函数也行。*/


#pragma mark - Getters and setters

在 viewDidload 里面只做 addSubview 的事情
在 viewDidAppear 里面做 Notification 的监听之类的事情
在 updateViewConstraints 里面做 add constraints 的事情
属性的初始化,则交给 getter 去做
每一个 delegate 都把对应的 protocol 名字带上
所有 button、gestureRecognizer 的响应事件都放在 Event response 这个区域里面

关于 View 的布局

苹果文档中指出,updateViewConstraints是用来做add constraints的地方。
建议使用 Masonry,代码的可读性就能好很多。

Search

    Table of Contents