欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

前言

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

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

1、本文檔的書寫目的

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

2、本文檔的使用范圍

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

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

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

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

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

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

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

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

ViewModel、Model、View、ViewController、其他

四、新建【子類】

1、類名

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

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

(3)為了整個(gè)項(xiàng)目代碼的整潔與統(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)使用長(zhǎng)的、描述性的命名方向。比如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、實(shí)例變量名

(3)下劃線開頭

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

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

5、公有方法名

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

(2)不要使用“and”這個(gè)詞,它不應(yīng)該用來闡明有多個(gè)參數(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)枚舉對(duì)象名: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)類名+標(biāo)識(shí)前綴+擴(kuò)展標(biāo)識(shí)。

(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ā)送代理的對(duì)象類名作為代理方法名的開始(去掉類名的前綴,并且遵循小駝峰命名法)。

七、新建【第三方庫(kù)的封裝】

(1)手動(dòng)管理:比如使用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)在聲明公開常量時(shí),也可以使用FOUNDATION_EXPORT替換extern。

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

九、新建【通知】

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

2、以Notification為后綴。

總結(jié)

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

相關(guān)文章

  • iOS仿新聞tab標(biāo)題欄效果

    iOS仿新聞tab標(biāo)題欄效果

    這篇文章主要為大家詳細(xì)介紹了iOS仿新聞tab標(biāo)題欄效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • IOS開發(fā)之路--C語言存儲(chǔ)方式和作用域

    IOS開發(fā)之路--C語言存儲(chǔ)方式和作用域

    只有你完全了解每個(gè)變量或函數(shù)存儲(chǔ)方式、作用范圍和銷毀時(shí)間才可能正確的使用這門語言。今天將著重介紹C語言中變量作用范圍、存儲(chǔ)方式、生命周期、作用域和可訪問性。
    2014-08-08
  • 提高iOS開發(fā)效率的小技巧與思路

    提高iOS開發(fā)效率的小技巧與思路

    很多人就會(huì)問學(xué)習(xí)iOS難不難啊?需要掌握哪些技能呢?有哪些技巧和方法呢?下面本文詳細(xì)給大家闡述開發(fā)技巧與思路。
    2016-07-07
  • IOS如何使用CAShapeLayer實(shí)現(xiàn)復(fù)雜的View的遮罩效果

    IOS如何使用CAShapeLayer實(shí)現(xiàn)復(fù)雜的View的遮罩效果

    這篇文章主要為大家詳細(xì)介紹了IOS如何使用CAShapeLayer實(shí)現(xiàn)復(fù)雜的View的遮罩效果,感興趣的小伙伴們可以參考一下
    2016-03-03
  • iOS自定義UIBarButtonItem的target和action示例代碼

    iOS自定義UIBarButtonItem的target和action示例代碼

    這篇文章主要給大家介紹了關(guān)于iOS自定義UIBarButtonItem的target和action的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • iOS Swift邏輯運(yùn)算符示例總結(jié)

    iOS Swift邏輯運(yùn)算符示例總結(jié)

    運(yùn)算符是一個(gè)符號(hào),用于告訴編譯器執(zhí)行一個(gè)數(shù)學(xué)或邏輯運(yùn)算,下面這篇文章主要給大家介紹了關(guān)于iOS Swift邏輯運(yùn)算符的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • iOS開發(fā)之路--微博OAuth授權(quán)_取得用戶授權(quán)的accessToken

    iOS開發(fā)之路--微博OAuth授權(quán)_取得用戶授權(quán)的accessToken

    本文是IOS開發(fā)之路系列文章的第二篇,講訴的內(nèi)容是如何使用微博OAuth授權(quán),并付源碼,然后詳細(xì)講解了取得用戶授權(quán)的accessToken,希望對(duì)大家有所幫助
    2014-08-08
  • IOS開發(fā)之路--C語言基礎(chǔ)知識(shí)

    IOS開發(fā)之路--C語言基礎(chǔ)知識(shí)

    當(dāng)前移動(dòng)開發(fā)的趨勢(shì)已經(jīng)勢(shì)不可擋,這個(gè)系列希望淺談一下個(gè)人對(duì)IOS開發(fā)的一些見解,今天我們從最基礎(chǔ)的C語言開始,C語言部分我將分成幾個(gè)章節(jié)去說,今天我們簡(jiǎn)單看一下C的一些基礎(chǔ)知識(shí),更高級(jí)的內(nèi)容我將放到后面的文章中。
    2014-08-08
  • IOS 開發(fā)之UILabel 或者 UIButton加下劃線鏈接

    IOS 開發(fā)之UILabel 或者 UIButton加下劃線鏈接

    這篇文章主要介紹了IOS 開發(fā)之UILabel 或者 UIButton加下劃線鏈接的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • iOS10適配問題及解決方法 新鮮出爐!

    iOS10適配問題及解決方法 新鮮出爐!

    這篇文章主要為大家詳細(xì)介紹了iOS 10適配問題,總結(jié)了一些關(guān)于iOS10適配方面的問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09

最新評(píng)論