IOS編碼安全規(guī)范_第1頁
IOS編碼安全規(guī)范_第2頁
IOS編碼安全規(guī)范_第3頁
IOS編碼安全規(guī)范_第4頁
IOS編碼安全規(guī)范_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

移動(dòng)端-IOS編碼安全規(guī)范命名Bundleid命名:規(guī)則:采用反域名命名規(guī)則,所有使用小寫字母。一級(jí)包名為com,二級(jí)包名根據(jù)應(yīng)用進(jìn)行命名。類命名:類命采用駝峰命名規(guī)則,即首字母必須大寫,假如為詞組,則每個(gè)單詞的首字母必須大寫,類名只能使用名詞或名詞詞組,力求類名簡(jiǎn)樸,不允許出現(xiàn)冗余的單詞。繼承自UIView的類以View結(jié)尾。繼承自ViewController的類以ViewController結(jié)尾。保存數(shù)據(jù)的實(shí)體以Model結(jié)尾。方法的命名:規(guī)則:方法名第一個(gè)單詞是一個(gè)動(dòng)詞,其首字母小寫,其后的所有單詞首字母大寫。如:publicVoidthreadRun()類中常用方法命名:類的獲取方法假如返回值為單個(gè)值,一般在頭部加上單詞“get”。假如返回值是數(shù)組或列表,要在頭部加單詞“find”如:publicStringgetUserName()、publiclist<String>findFriends()類的設(shè)立方法在被訪問字段名的前面加上前綴set如:publicvoidsetName(Stringname)類的布爾型判斷方法一般規(guī)定方法名使用單詞is或has做前綴如:isNetWorkConnected()構(gòu)造方法應(yīng)當(dāng)用遞增的方式寫。參數(shù)個(gè)數(shù)少的在前變量命名規(guī)則:第一個(gè)單詞首字母必須小寫,往后的單詞需要符合駝峰命名規(guī)則,即第一個(gè)字母大寫。變量名盡也許的使用名詞或名詞詞組。同樣規(guī)定簡(jiǎn)樸易懂,不允許出現(xiàn)無意義的單詞。如:StringuserName避免使用全局變量,假如用到必須加前綴‘Pub_’,同時(shí)需要在變量名體現(xiàn)其類型。成員變量命名與變量命名同樣,在private字段前加上字母“m”??丶兞棵?guī)則:一般的變量命名后加上控件名稱IBOutletUILabel*userNameLabel;常量命名:規(guī)則:必須所有大寫,單詞間用下劃線隔開。如:MAP_KEY異常命名:規(guī)則:自定義異常首字母大寫,以Exception為結(jié)尾。如:AppException資源命名:項(xiàng)目中所使用的所有資源命名必須以所有單詞小寫,單詞間以下劃線分割,加前綴區(qū)分。名稱功能btn_xx_normal按鈕正常情況下的效果btn_xx_press按鈕點(diǎn)擊下的效果bg_head背景圖片使用bg_功能_說明def_search_cell默認(rèn)圖片使用def_功能_說明icon_more_help圖標(biāo)圖片使用icon_功能_說明Seg_list_line具有分割特性的圖片使用seg_功能_說明Sel_ok選擇圖標(biāo)使用sel_功能_說明注釋頭文獻(xiàn)注釋:所有的源文獻(xiàn)都應(yīng)當(dāng)在開頭有一個(gè)注釋,其中列出頭文獻(xiàn)的相關(guān)描述、作者、以及相應(yīng)的版本信息。/*!@header頭文獻(xiàn)名稱@abstract關(guān)于這個(gè)源代碼文獻(xiàn)的一些基本描述@author作者@version1.002023/01/20Creation(此文檔的版本信息:版本號(hào)+創(chuàng)建時(shí)間)*/類注釋每一個(gè)類都要包含如下格式的注釋,以說明當(dāng)前類的功能等。/*!@class類名@abstract這里可以寫關(guān)于這個(gè)類的一些描述。*/枚舉注釋每一個(gè)枚舉都需要包含相相應(yīng)的enum描述,以及每個(gè)枚舉值相應(yīng)的含義。/*!@enum枚舉名稱@abstract關(guān)于這個(gè)enum的一些基本信息@constant各個(gè)相應(yīng)值得含義,如:OKButton相應(yīng)的是OK按鈕的Tag*/協(xié)議注釋協(xié)議需要注明是哪個(gè)類相應(yīng)的protocol,以及自身的相關(guān)描述。/*!@protocol協(xié)議名稱@abstract這是哪個(gè)類的protocol@discussion具體描述信息*/方法注釋涉及當(dāng)前方法的用途,當(dāng)前方法參數(shù)的含義,當(dāng)前方法返回值的內(nèi)容和相應(yīng)的錯(cuò)誤參照。/*!@method方法名@abstract該方法的一些簡(jiǎn)要描述@discussion該方法的具體使用方式,需要注意的地方,假如你是設(shè)計(jì)一個(gè)抽象類或者一個(gè)共通類給給其他類繼承的話,在這里需要具體描述一下如何使用這個(gè)方法。@paramtext參數(shù)列表@paramerror錯(cuò)誤參照@result返回結(jié)果*/屬性注釋/*!@property屬性名稱@abstract該P(yáng)roperty的一些基本描述。*/類別注釋/*!@category類別名稱@abstract哪個(gè)類的類別*/代碼風(fēng)格縮進(jìn)規(guī)則:嚴(yán)禁使用tab進(jìn)行縮進(jìn),縮進(jìn)為4個(gè)空格.h文獻(xiàn)空行可以使用空行的情況:文獻(xiàn)說明與頭文獻(xiàn)包含(#import)之間類聲明跟接口聲明之間。頭文獻(xiàn)包含(#import)與@class之間@interface與@class之間頭文獻(xiàn){}內(nèi),空1行開始寫成員對(duì)象。頭文獻(xiàn){}外,空1行開始寫屬性。屬性與方法之間。方法與@end之間。假如需要聲明protocol,空2行接著寫。通常protocol寫在@end后面,但是聲明在@interface之前。方法與方法之間空1行。.m文獻(xiàn)空行文獻(xiàn)說明與頭文獻(xiàn)包含(#import)之間。頭文獻(xiàn)包含(#import)之間。@implementation和@synthesize之間。@synthesize與方法之間。變量聲明后需要空1行。各功能塊之間。#pragmamark與方法之間。空格關(guān)鍵字與其后的表達(dá)式之間需要加空格。單目操作符不應(yīng)與操作數(shù)分開。除’,’外,其它雙目操作符應(yīng)與它們的操作數(shù)用空格隔開。.h中協(xié)議<>前面有一個(gè)空格。.h中成員聲明時(shí),類型與變量之間有至少1個(gè)空格。*號(hào)靠近變量,不靠近類型。@property后留1個(gè)空格,()里面,逗號(hào)緊跟前一變量,與后一變量之間留1個(gè)空格。()外面,先留1個(gè)空格,再聲明屬性。方法的+,-后面與()。返回類型與*之間留1個(gè)空格,方法參數(shù)中返回類型與*之間留1個(gè)空格在多參數(shù)方法中,每個(gè)參數(shù)后面都有1個(gè)空格。Switch..case語句,代碼塊需要留4個(gè)空格。If語句嵌套,內(nèi)部if語句需要留4個(gè)空格。ImportImport語句引入的順序如下:IOSimports第三方庫自定義.h文獻(xiàn)在每組內(nèi)部按字母排序,大寫字母排在小寫字母的前面。每個(gè)大組之間應(yīng)當(dāng)空一行。Log規(guī)則:統(tǒng)一使用自定的log服務(wù),不直接使用系統(tǒng)自帶。語句每行只能有一個(gè)語句每行代碼最多不得操作100個(gè)字符。標(biāo)準(zhǔn)大括號(hào)風(fēng)格大括號(hào)不單獨(dú)占用一行;它們緊接著上一行書寫??刂普Z句If語句判斷中假如有常量,則應(yīng)將常量放在判斷式的右側(cè),如if(a>b)假如if語句成立的邏輯只有一句,則應(yīng)當(dāng)將其放在if同一行或用{}括起來。如:if(index>0)……if(index>0){……….}While語句循環(huán)語句中不允許出現(xiàn)表達(dá)式。如while(I<documents.getCount())修改規(guī)范新增代碼行新增代碼行的前后應(yīng)有注釋行說明。//修改人,修改時(shí)間,修改說明新增代碼行//修改結(jié)束刪除代碼行刪除代碼向的前后用注釋行說明//修改人,修改時(shí)間,修改說明要?jiǎng)h除的代碼行(將要?jiǎng)h除的語句進(jìn)行注釋)//修改結(jié)束修改代碼行修改代碼行以注釋舊代碼行后再新增代碼行的方式進(jìn)行。//修改人,修改時(shí)間,修改說明//修改前代碼行開始//修改前代碼行//修改前代碼行結(jié)束//修改后代碼行開始修改后代碼行//修改結(jié)束嚴(yán)禁出現(xiàn)的情況永遠(yuǎn)不要有空的catch語句。替代方

溫馨提示

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

評(píng)論

0/150

提交評(píng)論