有時候,我們需要在代碼中搜索特殊的符號或者代碼段,根據符號或使用搜索功能導航代碼段效率並不算高。為了使用普通的英語標識重要的代碼片段,可在代碼中插入特殊格式的注釋。這些注釋不會在應用程序中添加任何特殊的功能,而只是在代碼中創建邏輯分節。當你單擊代碼編輯器上方路徑的最后一部分時,這些分節將會與其他代碼符號一起顯示出來。有下面三種類型的注釋標記:
// MARK: - <label name> // TODO: <text you want to remember> // FIXME: <text you want to remember>
MARK注釋標記用於在Symbol下拉列表中插入一條水平線,可用於根據功能或負責的程序員將不同的方法分組。通常寫在一個方法的實現代碼之前,例如:
// MARK: - Do initialization before view appear - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. }
對應的,點擊地址欄最后一行,會彈出如下所示的下拉列表:

注:使用MARK注釋的效果與使用#pragma mark的效果一樣的,這種方法等價於:
#pragma mark - Do initialization before view appear - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. }
標記TODO和FIXME也會在Symbol下拉列表中插入一個字符串;顧名思義,它們能夠提醒你需要牢記應該修復或完成的任務。這兩個符號通暢用來標記截下來要完成的工作,既可以寫在方法名之前,也可以寫在方法內部:
// MARK: Do initialization before view appear // TODO: Write here is ok - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. // TODO: You have do nothing here // FIXME: Please do some thing }
對應的Symbol下拉列表的顯示效果如下:

注:當然並不是說MARK標記就不能夠寫在方法內部了,實際上任何可以寫注釋的地方都可以用這三個標記。但是,為了方便區分,區別使用這3個標記,最好按照一個通用的規定,大家在編寫代碼時共同遵守。
