IOS開發(fā)編碼及命名規(guī)范_第1頁
IOS開發(fā)編碼及命名規(guī)范_第2頁
IOS開發(fā)編碼及命名規(guī)范_第3頁
IOS開發(fā)編碼及命名規(guī)范_第4頁
IOS開發(fā)編碼及命名規(guī)范_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、IOS 開發(fā)編碼及命名規(guī)范目錄1 、目的 42 、適用范圍 53、編碼規(guī)范 515 / 153.1、文件 53.2 、注釋 53.3、編碼排版格式 63.4 、命名規(guī)范 1.0.3.4.1 、保留字 1.03.4.2 、方法 1.0.3.4.3 、變量 1.1.3.4.4 、常量 1.3.3.4.5 、類 1.3.3.5 、修改規(guī)范 1.4.3.5.1 、新增代碼行 1.43.5.2 、刪除代碼行 1.43.5.3 、修改代碼行 1.41、目的的編碼風(fēng)格和標(biāo)準(zhǔn)統(tǒng)一規(guī)范 XCode 編輯環(huán)境下 Objective-C2、適用范圍適用于所有用 Objective-C 語言開發(fā)的項目 。3、編碼規(guī)范

2、3.1 、文件1) 項目文件都是使用因文命名。2) 公共文件統(tǒng)一命名為 AppConfigc.h 。任何文件的命名盡量不要以中文命名。3) 對于文件的目錄要按如下結(jié)構(gòu)創(chuàng)建:- 圖片等資源文件放在 Images.xcassets 。- 所有的三方庫在單獨的組 (Group) 中,如 ThirdPartLibrary 。- 所有的分類跟封裝放在單獨的組中,如Common 。3.2 、注釋1) 注釋可以采用 /* */ 和 / 兩種注釋符號,涉及到多行注釋時,盡量使用 /* */ 。2) 對于一行代碼的注釋可放在前一行及本行上,不允許放在下一行,更不允許在一行語 句的中間加入注釋。3) 單元文件的文

3、件頭注釋說明應(yīng)按如下格式:/ 文件名/ 工程名/ Created by 創(chuàng)建者 on 日期 ./ Copyright 2010 xxx 有限公司 . All rights reserved./系統(tǒng)名稱:/功能描述:/修改記錄:(僅記錄功能修改)/張三2012-02-02創(chuàng)建該單元/小明2010-03-02增加本地點單功能。3.3 、編碼排版格式1)代碼的縮進(jìn)應(yīng)使用空格(SPACE),不能使用制表符(TAB),并且縮進(jìn)以2個字符為單位。2)中括弧的每一個括弧在源程序中要單獨占一行。例如/ 不正確用法for (int i = 0; i 10 ; i+)/ 正確用法for (int i = 0; i

4、 b)/錯誤的寫法,邏輯判斷符號兩端沒有空格if(a b)/ 正確的寫法d) .h 中協(xié)議 前面有一個空格。e) .h 中成員聲明時,類型與變量之間有至少 1 個空格。 * 號靠近變量,不靠近類 型。f) property 后留 1 個空格,()里面,逗號緊跟前一變量,與后一變量之間留1 個空格。()外面,先留 1 個空格,再聲明屬性。g) 方法的 +,-后面與()之間留 1 個空格。h) 返回類型與 *之間留 1個空格,方法參數(shù)中返回類型與 *之間留 1 個空格。i) 在多參數(shù)方法中,每個參數(shù)后面都有 1 個空格。4) 每行只能有一個語句例如/ 不正確寫法NSUInteger objectI

5、ndex, stuffCount;或objectIndex = objectIndex + 10, stuffCount = stuffCount + 20;或synthesize MyView, MyLabelView;/ 正確寫法NSUInteger objectIndex;NSUInteger stuffCount;或objectIndex = objectIndex + 10;stuffCount = stuffCount + 20;或synthesize MyView;synthesize MyLabelView;5) 關(guān)于空行a) .h 中的空行心文件說明與頭文件包含倂import

6、)之間空1行1行。頭文件包含(#import)之間,如果需要分類區(qū)別,各類別之間空、頭文件包含(#import)與class之間空2行。、interface 與class 之間空 1 行。 Preferences =TextEdit ing= Page Guide at column / 輸入 100 即可。3.4、命名規(guī)范3.4.1、保留字Objective-c 語言的保留字或關(guān)鍵詞應(yīng)全部使用小寫字母,除下表中保留字外,private、protected public、在類型說明中也作為保留字使用。還有 nonatomanic,retain,readwrite,reado nly等也有特殊的

7、使用場合。_BoolComplexm agi naryautobreakbycopybyrefcasecharcon stcon ti nuedefaultdodoubleelseenumexternfloatforgotoifininlinein outintlongon ewayoutregisterrestrictreturnselfshortsig nedsizeofstaticstructsuperswitchtypedefunionun sig nedvoidvolatilewhile3.4.2、方法1)方法的名稱應(yīng)全部使用有意義的單詞組成,且以小寫字母開頭,多單詞組合時,后面的單

8、詞首字母大寫。例如:-(void)getUserInformation2) 設(shè)置類變量的內(nèi)容的方法應(yīng)使用 set 作為前綴,讀取變量的內(nèi)容的方法應(yīng)使用 get 作為 前綴。例如:-(void)getUserName;-(void)setUserName:(NSString *)userName;3) 方法中的參數(shù):第一個參數(shù)名稱要從函數(shù)名稱上攜帶出來,第二個參數(shù)的首字母小寫, 多個單詞組合時,后面單詞首字母大寫。參數(shù)有別名時,參數(shù)別名與參數(shù)名一致,但參 數(shù)名前綴以 _。參數(shù)別名與前一參數(shù)保留 1 個空格。 參數(shù)無別名時, 以有意義的字母命名。 例如:-(void)myFunctionWithS

9、izeA:(CGSize)sizeA sizeB:(CGSize)_sizeB;3.4.3 、變量1) 變量必須起有意義的名字,使其他組員可以很容易讀懂變量所代表的意義,變量命名可 以采用同義的英文命名,可使用幾個英文單詞,第一個單詞首字母小寫,其他單詞首字 母大寫。例如:NSString *username;2) 對于一些特殊類型的變量,命名時要帶上類型,如 NSArray 的變量命名為 xxxArray , 其他的如 xxxDictionary ,xxxSize 等。這樣就可以從名稱上知道是什么類型的變量。千 萬不能將 NSArray 的變量命名為 xxxDictionary 。3) 對于

10、要和 interface builder 關(guān)聯(lián)的的輸出口變量,命名時要后綴以特定的控件名。例如:IBOutlet UILabel *userNameLabel;4) 對于使用 c 語言形式聲明的變量,一些特定類型可采用一定的簡寫:例如:指針類型: P結(jié)構(gòu)體類型: Rec數(shù)組類型: ArrCore Graphic : CG等。循環(huán)控制變量通常使用單一的字符如: i、j、k 等。使用有意義的名字, 如 objectIndex 也是可以的。5) 盡量避免使用全局變量,如果必須使用全局變量則必須加前綴 Pub_ ,同時應(yīng)在變量名稱中體現(xiàn)變量的類型。6) 私有實例變量前加一個下劃線,如 _myPriva

11、teVarible 。7) 枚舉變量也要有相應(yīng)的前綴來區(qū)分不同的 enum 變量。比如蘋果公司的一個 enum 例如:typedef enum CGPathDrawingMode CGPathDrawingMode;/* Drawing modes for text. */ enum CGTextDrawingModekCGTextFill,kCGTextStroke,kCGTextFillStroke,kCGTextInvisible,kCGTextFillClip,kCGTextStrokeClip,kCGTextFillStrokeClip,kCGTextClip;3.4.4 、常量1)

12、 避免在程序中直接出現(xiàn)常數(shù),使用超過一次的應(yīng)以宏定義的形式來替代。2) 常數(shù)的宏定義應(yīng)與它實際使用時的類型相一致。如以 3.0 來定義浮點類型,用 3 表 示整型。3) 常量的命名應(yīng)當(dāng)能夠表達(dá)出它的用途,并且用大寫字母表示。例如:#define PI 3.14159263.4.5 、類1) 所有的類名, 接口名 (Protocol) 均以大寫字母開頭, 多單詞組合時,后面的單詞首字 母大寫。類,接口名必須是有意義的。2) 繼承自 UIView 的類以 View 結(jié)尾。例如:結(jié)尾BorderCircularView , LabelView 等。3) 繼承自 UITableViewController 的類以 viewController例如:BaseTableViewController 等。其他類推。3.5 、修改規(guī)范3.5.1 、新增代碼行新增代碼行的前后應(yīng)有注釋行說明。/ 修改

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論