Context
在OC 中, 我经常使用 #Param
来给控制器划分代码结构 , 比如 ,一个控制器,我经常分为如下的结构:
1 | #pragma mark -life cycle |
这样的好处是, 每个控制器的结构都是规范的. 如图, 方法都分类了(对于我这样的Vim控 ,还能实现在标签之间的跳转)
在协作开发中 , 阅读代码的成本大大降低.
Swift 的编译标记
在Swift 中也有类似的方式, 我们可以使用 // MARK:
这样的标记,并且在后面写上描述, 这样Xcode 将在导航栏的中用标签的形式区分出这些标记.
1 | class ViewController: UIViewController { |
这样,在Swift中得表现如图:
我们还能在 :
的后面加一个 ‘-‘,这样导航中会再多一条横线,隔开各个部分
1 |
|
效果如图:
还有 todo 和 fixme ,我们可以用来表示要坐得事情 和需要改正的地方.
1 | // TODO: this is to do |
效果如图:
可以看到, 与 MARK 相比 , TODO 和 FIXME 的本身也被显示出来了, 能更好地表明用意.
一个Warning
在OC 中,我们用的更多的是 #Warning ,来提示自己这里需要更改或者有问题需要修改, 但是 Swift中暂时没有类似的关键字. 算是比较遗憾的.