最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS項目的開發(fā)命名規(guī)范教程

 更新時間:2017年11月24日 11:23:05   作者:碼出境界  
為了團隊各成員之間代碼的互通、可讀、易維護性,特制訂此開發(fā)規(guī)范。下面這篇文章主要給大家介紹了關(guān)于iOS項目的開發(fā)命名規(guī)范的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

遵守規(guī)范也是讓代碼更清晰明了,易讀,易用,易維護,可以更好的適應(yīng)團隊開發(fā)。自己看著也是賞心悅目,何樂而不為呢。下面話不多說了,來一起看看詳細的介紹吧。

一、關(guān)于本文檔

1、本文檔的書寫目的

    《iOS項目的命名規(guī)范》的書寫目的,在于讓后續(xù)參加到該項目的iOS開發(fā)人員通過閱讀該文檔,了解在當(dāng)前iOS項目的代碼中的命名要求并嚴格按照本文檔執(zhí)行,以便保證代碼的更好閱讀與維護。

2、本文檔的使用范圍

   《iOS項目的命名規(guī)范》在iOS項目中被強制要求執(zhí)行。將本文中的WSF或者wsf替換成代表項目的前綴(請用三個大寫字母),即可用于其他iOS項目。

3、本文檔的更新負責(zé)人

    《iOS項目的命名規(guī)范》由本ID和同事共同協(xié)商討論制定,由本ID負責(zé)編輯、修改和后續(xù)的版本更新。

二、目錄結(jié)構(gòu)

三、新建【業(yè)務(wù)模塊文件夾】

1、文件夾的名稱需要體現(xiàn)該模塊的功能概括。

比如:支付系統(tǒng)、訂單

2、二級文件夾根據(jù)編程設(shè)計模式分類命名,需要從下面詞語中取詞:

ViewModel、Model、View、ViewController、其他

四、新建【子類】

1、類名

(1)遵循大駝峰命名法。

(2)WSF+模塊概括名+功能分區(qū)名+父類的慣用后綴。比如:WSFOrderListVC

(3)為了整個項目代碼的整潔與統(tǒng)一,建議使用List、Detail、Message、TView、Cell、VC、TVC、VM等字樣。

(4)模塊概括名一定要是統(tǒng)一的、明確的、唯一的代表模塊名稱。

(5)父類的慣用后綴的意思是:如果要從其他框架繼承子類,那么必須遵循其命名慣例。比如,繼承UIView的子類名稱必須以View結(jié)尾。

2、屬性名

(1)遵循小駝峰命名法、避免縮寫。

(2)后綴體現(xiàn)屬性的數(shù)據(jù)類型。比如:orderPriceLabel、orderLimitsArray。

(3)使用長的、描述性的命名方向。比如settingButton而不是setBtn。

(4)要求NSString *nameString; 而不是NSString* nameString; 或者NSString * nameString;。

3、屬性定義

(1)定義屬性的參數(shù)順序排序:原子性、讀寫、內(nèi)存管理。比如:@property (nonatomic, readwrite, copy) NSString *nameString;

(2)BOOL類型的屬性,需要為其getter方法帶is前綴。getter方法放在內(nèi)存管理限定符前面,比如:@property (nonatomic, readonly, getter=isEditable, assign) BOOL editable;

4、實例變量名

(3)下劃線開頭

(2)遵循小駝峰命名法、避免縮寫。

(3)后綴體現(xiàn)屬性的數(shù)據(jù)類型。比如:_orderPriceLabel、_orderLimitsArray。

5、公有方法名

(1)遵循小駝峰命名法、避免縮寫。

(2)不要使用“and”這個詞,它不應(yīng)該用來闡明有多個參數(shù)。

6、私有方法名

(1)遵循小駝峰命名法、避免縮寫。

(2)直接父類是Cocoa框架:p_開頭。

(3)直接父類是其他框架:以自己一貫的前綴(小寫)+下劃線開頭或者wsf_。比如:abc_、wsf_。

7、純C函數(shù)

(1)遵循小駝峰命名法、避免縮寫。

(2)加上WSF為前綴。

8、全局變量

.h文件

extern NSTimeInterval WSFPersonModelAnimationDuration; 
extern NSString *WSFPersonModelErrorMessage; 

.m文件

NSTimeInterval WSFPersonModelAnimationDuration = 0.3;
NSString *WSFPersonModelErrorMessage = @“ErrorMessage”;

(1)遵循大駝峰命名法、避免縮寫。

9、枚舉名

(1)遵循大駝峰命名法、避免縮寫。

(2)使用OC的枚舉方式。

(3)枚舉對象名:WSF+枚舉范圍概括名+Type。比如:WSFAlipayResultCodeType

(4)枚舉種類名:WSF+枚舉范圍概括名+Type_某種情況名。比如:WSFAlipayResultCodeType_success。

10、協(xié)議名

(1)遵循大駝峰命名法、避免縮寫。

(2)代理協(xié)議:類名+Delegate。比如:WSFOrderListChangedDelegate。

(3)數(shù)據(jù)源協(xié)議:類名+DataSource。比如:WSFOrderListDataSource。

(4)普通協(xié)議:類名+Protocol。比如:WSFOrderListVCProtocol。

五、新建【分類】

1、分類名

(1)類名+標識前綴+擴展標識。

(2)遵循大駝峰命名法、避免縮寫。

(3)WSF或者自己一貫使用前綴(大寫)+下劃線為前綴。比如:NSString (WSF_HTTPManager)、NSString(ABC_HTTPManager)。

2、方法名

(1)遵循小駝峰命名法、避免縮寫。

(2)wsf或者自己一貫使用前綴(小寫)+下劃線為前綴。比如:- (void)wsf_urlEncodedString;、- (void)abc_urlEncodedString;

六、新建【協(xié)議】

1、協(xié)議名

(1)遵循大駝峰命名法、避免縮寫。

2、方法名

(1)遵循小駝峰命名法、避免縮寫。

(2)如果是代理協(xié)議,以發(fā)送代理的對象類名作為代理方法名的開始(去掉類名的前綴,并且遵循小駝峰命名法)。

七、新建【第三方庫的封裝】

(1)手動管理:比如使用MJRefresh框架,需要將它的類名全部加前綴以避免命名空間沖突。比如:命名為WSFMJRefresh。

(2)pod管理:不需要特殊處理。

八、新建【常量】

1、私有常量

.m文件

static const NSTimeInterval kAnimationDuration = 0.3; 
static NSString *const kErrorMessage = @“ErrorMessage”;

2、公開常量

.h文件

extern const NSTimeInterval WSFPersonModelAnimationDuration; 
extern NSString *const WSFPersonModelErrorMessage; 

.m文件

const NSTimeInterval WSFPersonModelAnimationDuration = 0.3;
NSString *const WSFPersonModelErrorMessage = @“ErrorMessage”;

說明:

(1)遵循小駝峰命名法、避免縮寫。

(2)在聲明公開常量時,也可以使用FOUNDATION_EXPORT替換extern。

3、常量名稱的常用命名方法:若常量局限于某“編譯單元”,也就是“實現(xiàn)文件”之內(nèi),則在前面加字母k;若常量在類之外可見,則通常以WSF+類名為前綴。

九、新建【通知】

1、按照公共常量方法處理。

2、以Notification為后綴。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。  

相關(guān)文章

最新評論

团风县| 松阳县| 阿拉尔市| 霍州市| 龙胜| 馆陶县| 永年县| 观塘区| 偏关县| 阿巴嘎旗| 安乡县| 靖宇县| 四平市| 岚皋县| 新源县| 荔波县| 昭平县| 夏邑县| 乌拉特中旗| 启东市| 涿鹿县| 城步| 乐昌市| 安达市| 赤水市| 平陆县| 凯里市| 和林格尔县| 乌拉特后旗| 得荣县| 如东县| 临桂县| 密山市| 大竹县| 景宁| 三亚市| 磐石市| 遂宁市| 马公市| 石楼县| 平遥县|