freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件部人員及項(xiàng)目管理規(guī)范-文庫吧

2025-04-24 03:36 本頁面


【正文】 括號(hào) 永遠(yuǎn)不要在括號(hào)與括號(hào)之間的字符中間留下空格。下面的例子示范了錯(cuò)誤的與正確地使用括號(hào)中的空格: CallProc( Aparameter )。 //錯(cuò)誤 CallProc(Aparameter)。 //正確 永遠(yuǎn)不要在一個(gè)語句中使用不必要的括號(hào)。括號(hào)只應(yīng)在源代碼中需要的地方使用。以下的例子示范了錯(cuò)誤和正確的使用: if (I = 42) then //錯(cuò)誤 - 多余的括號(hào) 四川川大軟件工程研究所 8 if (I = 42) or (J = 42) then //正確 - 需要括號(hào) 保留字和關(guān)鍵字 Object Pascal 保留字和關(guān)鍵字永遠(yuǎn)是全部小寫。 過程和函數(shù)(例程) 命名 /格式化 例程的名字永遠(yuǎn)應(yīng)該以大寫的字母開頭并且中間錯(cuò)落分明以便于可讀性。下面是一個(gè)不正確格式的過程名稱: procedure Thisisapoorlyformattedroutinename。 下面是一個(gè)合適的大小寫例程名稱的例子: procedure ThisIsMuchMoreReadableRoutineName。 例程的名稱應(yīng)該同它的內(nèi)容相符。一個(gè)會(huì)導(dǎo)致某個(gè)行為的例程應(yīng)以動(dòng)詞開頭。例如: procedure FormatHardDrive。 一個(gè)用于設(shè)置輸入?yún)?shù)的例程應(yīng)以單詞 set 作為前綴,例如: procedure SetUserName。 一個(gè)用來接收某個(gè)值的例程應(yīng)以單詞 get 作為前綴,例如: procedure GetUserName : string。 形式參數(shù) 格式化 如果有的話,相同類型的形參應(yīng)合并在一個(gè)語句中: procedure Foo(Param1, Param2, Param3 : Integer。 Param4 : string)。 命名 所有形參的名字應(yīng)是十分符合它們所代表的意義,特別是應(yīng)該以傳送到例程中的標(biāo)志符的名稱為基礎(chǔ)。一個(gè)好的參數(shù)名稱應(yīng)以字符 A為前綴 - 例如: procedure SomeProc(AuserName : string。 AuserAge : integer)。 “ A”前綴按約定表示該參數(shù)的名稱是與類類型中的一個(gè)屬性或域的名稱相對(duì)應(yīng)的。 參數(shù)的排序 下面的形參的順序重點(diǎn)說明了注冊(cè)者調(diào)用約定調(diào)用的好處。 - 最常用的參數(shù)應(yīng)放在第一位,其它的參數(shù)應(yīng)按從左到右的順序排列。 - 輸入?yún)?shù)列表應(yīng)放在輸出參數(shù)列表的左邊。 - 將通用的參數(shù)放在特殊參數(shù)的左邊,例如: procedure SomeProc(Apla, AContinent, Acountry, Astate, Acity) - 排序有可能有些例外,比如事件的處理。類型為 TObject 的 Sender 參數(shù)經(jīng)常放在第一位。 常量參數(shù) 當(dāng)一個(gè)參數(shù)為記錄型、數(shù)組類型、 ShortString、或接口類型并且在例程中不被改變時(shí),這些參數(shù)應(yīng)做上常量標(biāo)記。這樣做會(huì)讓編譯器更加有效率的產(chǎn)生有關(guān)這些不改變的參數(shù)的代碼。 而例程中另外一些非變參數(shù)也可常量來傳送。盡管這樣做沒有產(chǎn)生任何效果和提高效率,這將會(huì)給調(diào)用例程的使用者提供更多的信息。 名稱的沖突 當(dāng)使用擁有兩個(gè)名稱相同的例程的兩個(gè)單元時(shí),如果你調(diào)用該例程時(shí),在 uses 子句中排在后面的單元中的例程將會(huì)被調(diào)用。為了解決這種 “在 uses 子句上的模糊”沖突,要在調(diào)用該例程時(shí)寫上相關(guān)的單元的前綴,例如: 四川川大軟件工程研究所 9 (SR)。 或 (Handle)。 函數(shù)和過程的注釋 當(dāng)實(shí)現(xiàn)一個(gè)函數(shù)或過程時(shí),必須在函數(shù)或過程的實(shí)現(xiàn)部分描述函數(shù)或過程的用途,調(diào)用方法,入口跟返回參數(shù)的含義。 變量 變量的命名和格式 變量的命名應(yīng)以使用它們的目的相符 循環(huán)控制變量應(yīng)采用一個(gè)單獨(dú)的字符作為名字,比如 I, J,或 K,也可以采用更加有意義的名字,比如 UserIndex。 邏輯變量的名字應(yīng)能充分表達(dá)準(zhǔn)確的真或假的意思。 局部變量 一個(gè)過程中的局部變量應(yīng)遵循所有其它變量的使用和命名約定。臨時(shí)變量的取名應(yīng)合理。 如果必須的話,在一進(jìn)入例程就應(yīng)初始化局部變量。局部的 AnsiString變量會(huì)自動(dòng)初始化為一個(gè)空的字符串。 局部接口和派分接口類型變量將會(huì)自動(dòng)初始化為 nil,并且局部變數(shù)和 ole 變數(shù)類型變量會(huì)自動(dòng)初始化為 Unassigned 全局變量的使用 使用全局變量是不推薦的。但是,在某些時(shí)候還是必須 使用,而且它們也只應(yīng)在必須使用的時(shí)候才使用。在這種時(shí)候,你應(yīng)努力只在一段上下文范圍內(nèi)使用全局變量。例如,一個(gè)全局變量只應(yīng)在一個(gè)單元的 implemntation 部分內(nèi)是全局的。如果打算在多個(gè)單元類使用全局?jǐn)?shù)據(jù),你應(yīng)將它們移到一個(gè)公共的單元中然后被其它所有單元使用。 全局變量可以在 var 子句中直接初始化為一個(gè)值。記住,所有的全局?jǐn)?shù)據(jù)會(huì)自動(dòng)初始化為 0,因此不要將全局變量初始化為一個(gè)“空”值比如 0、 nil、 39。39。、 Unassigned、等等。這樣做的一個(gè)理由是因?yàn)榱悖跏蓟娜謹(jǐn)?shù)據(jù)在 exe 文件中不會(huì)占據(jù)任何空間。 零-初始化數(shù)據(jù)被存儲(chǔ)在一個(gè)虛擬的數(shù)據(jù)段,它在應(yīng)用程序啟動(dòng)后被分配在一段內(nèi)存中。非零-初始化的全局?jǐn)?shù)據(jù)在硬盤的 exe 文件占用空間。 類型 大寫約定 如果類型的名字是保留字,那么它應(yīng)全部小寫。 Win32 API 類型通常全部大寫,并且你必須遵循在 或其他 API 單元中的詳細(xì)類型名稱的約定。對(duì)于其他變量名字,地一個(gè)字母應(yīng)為大寫,而其他字母應(yīng)錯(cuò)落有致。下面是一些例子: var MyString : string。 //保留字 WindowHandle : HWND。 //Win32 API 類型 I : Integer。 //在 System 單元中引進(jìn)的類型標(biāo)識(shí)符 浮點(diǎn)指針類型 不推薦使用 Real類型,因?yàn)樗拇嬖谥皇菫榱讼蚯凹嫒菰缙诘?Pascal代碼。在通常情況下用 Double 來實(shí)現(xiàn)浮點(diǎn)指針的需要。并且, Double 對(duì)處理器和總線而言是做了最優(yōu)化處理的,它也是 IEEE 中定義的標(biāo)準(zhǔn)數(shù)據(jù)格式。只有當(dāng)需要的范圍超出 Double所定義的范圍時(shí)才使用 Extended。 Extended 是 intel 定義的類型且在 Java 中不支持。只有當(dāng)浮點(diǎn)指針變量的實(shí)際字節(jié)大小有其意義時(shí)才使用 Single。(比如當(dāng)使用另一種語四川川大軟件工程研究所 10 言的 DLLs 時(shí))。 枚舉類型 枚舉類型的名字需符合使用該類型的目的。該類型的名字需以字符 T 為前綴,以表明這是一個(gè)類型。枚舉類型中的標(biāo)識(shí)符列表必須包含兩個(gè)或三個(gè)字符的前綴來對(duì)應(yīng)于該枚舉類型的名字 - 例如: TsongType = (stRock, stClassical, stCountry, stAlternative, stHeavyMetal, stRB)。 一個(gè)枚舉類型的實(shí)例的名字應(yīng)與不要前綴的枚舉類型( SongType)相同,除非有更好的原因來賦予該變量更特殊的名字,比如: FavoriteSongType1,FavoriteSongType2 等等。 變數(shù)和 ole變數(shù)類型 通常不建議使用變數(shù)和 Ole 變數(shù)類型。但在只有運(yùn)行時(shí)刻才能知道數(shù)據(jù)類型的程序中必須使用該類型,這種情形多出現(xiàn)在 COM 和數(shù)據(jù)庫開發(fā)中。 Ole 變數(shù)使用在以COM 為基礎(chǔ)的編程中例如自動(dòng)化和 ActiveX 控制,而變數(shù)使用在非 COM 的編程中 ,這是因?yàn)樽償?shù)可以十分有效地存儲(chǔ)本地 Delphi 字符串(同一個(gè)字符串變量一樣),但Ole 變數(shù)會(huì)將所有的字符串轉(zhuǎn)換為 Ole 字符串( WideChar 字符串)并且并不實(shí)例運(yùn)算 - 它們永遠(yuǎn)拷貝。 結(jié)構(gòu)類型 數(shù)組類型 數(shù)組類型的名字需符合它們使用的目的。該類型的名字必須加以前綴 T。如果須聲明該數(shù)組類型的指針,那么該指針需加以前綴 P 而且應(yīng)立即聲明在該數(shù)組聲明的前面。例如: type PCycleArray = ^TCycleArray。 TCycleArray = array[1...100] of integer。 在實(shí)際應(yīng)用中,數(shù)組的變量實(shí)例的名稱應(yīng)是其類型的名字去掉前綴 T。 記錄類型 記錄類型的名字應(yīng)符合使用它們的目的。其類型的聲明應(yīng)加以前綴 T。如果要聲明該記錄類型的指針,就應(yīng)加以前綴 P 并且應(yīng)緊靠在類型聲明的前面聲明。例如: type PEmployee = ^TEmployee。 TEmployee = record EmployeeName : string。 EmployeeRate : Double。 end。 語句 if 語句 在 if/then/else 語句中最常發(fā)生的行為應(yīng)放在 then 子句中,而其它發(fā)生可能性較小的行為應(yīng)放在 else 子句中。 盡量避免使用嵌套的 if 語句,在這種情形下應(yīng)用多個(gè) if 語句來判斷各種可能。 不要使用 if 嵌套超過五級(jí)深度。應(yīng)使代碼編寫得更加清晰、明了。 不要在 if 語句中使用不必要的圓括號(hào)。 如果在 if 語句中有多個(gè)條件 需測(cè)試,這些條件應(yīng)按計(jì)算強(qiáng)度由少到多的順序從左到右排列。這樣做能使編譯器在編譯代碼時(shí)獲得布爾估算邏輯的捷徑,從而使你的代碼獲得最佳的優(yōu)化。舉例來說,如果條件 1 快過條件 2,而條件 2快過條件 3,那么在 if 語句中的排列四川川大軟件工程研究所 11 應(yīng)是: if 條件 1 and 條件 2 and 條件 3 then case 語句 一般性話題 在一個(gè) case 語句中的各個(gè)獨(dú)立的單元應(yīng)以數(shù)字或字母順序排列。 每一個(gè) case 單元的動(dòng)作行為應(yīng)保持簡(jiǎn)單而不應(yīng)該超過四到五行代碼。如果所要執(zhí)行的動(dòng)作過于復(fù)雜應(yīng)采用獨(dú)立 的過程或函數(shù)。 Case 語句中的 else 子句只有當(dāng)需要缺省行為或處理錯(cuò)誤時(shí)才使用。 格式 case 語句應(yīng)遵循其它結(jié)構(gòu)的縮格和命名約定。 while 語句 在一個(gè) while 語句中不建議使用 exit 過程來跳出循環(huán),盡量?jī)H使用循環(huán)條件來跳出循環(huán)。 在一個(gè) while 循環(huán)中所用的初始化代碼應(yīng)緊靠在進(jìn)入 while 循環(huán)前面出現(xiàn)而不要被其它不相關(guān)的語句隔開。 任何結(jié)束后的處理應(yīng)在循環(huán)之后立即進(jìn)行。 for 語句 for 語句只有當(dāng)循環(huán)次數(shù)已知的情況下才能取代 while 語句使用。 repeat 語句 repeat 語句的使用同 while 語句一樣,并且遵循同樣的通用方針。 with 語句 一般話題 with 語句應(yīng)節(jié)省使用,并且?guī)в写罅康木?。避免過度使用 with 語句并且在 with語句中小心使用多個(gè)對(duì)象、記錄等等。例如: with Record1, Record2 do 這些事情會(huì)使程序員感到困惑并難以發(fā)現(xiàn)問題所在。 格式 with 語句遵循本文檔所說明的命名約定和縮格的格式規(guī)則。 結(jié)構(gòu)異常處理 一般 話題 異常的處理大量地使用在錯(cuò)誤糾正和資源保護(hù)方面。這就是說一旦資源被分配,一個(gè)try...finally 必需加以使用來保證該資源被正確的釋放。這種異常的保護(hù)也是指在一個(gè)單元的initializition/finalization 或一個(gè)對(duì)象的 constructor/destructor 中進(jìn)行資源的分配和釋放。 try...finally 的使用 任何情形下,每一次的分配都應(yīng)跟隨一個(gè) try...finally。舉例來說,下面的代碼會(huì)造成可能的錯(cuò)誤: SomeClass1 := 。 SomeClass2 。= 。 try { do some code } finally 。 。 end。 一個(gè)更安全更合適的分配過程應(yīng)是: 四川川大軟件工程研究所 12 SomeClass1 := 。 try SomeClass2 := 。 try { do some code } finally 。 end。 finally 。 end。 try...except 的使用 只有當(dāng)在異常被觸發(fā)而你想執(zhí)行一些任務(wù)時(shí)才使用 try...except。通常,你沒有必要為了只是簡(jiǎn)單地在屏幕上顯示一個(gè)錯(cuò)誤信息而使用 try...except 語句,因?yàn)檫@會(huì)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1