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

正文內(nèi)容

金融機(jī)構(gòu)編碼規(guī)范-文庫吧

2025-10-01 13:21 本頁面


【正文】 sing MyControls。,不要顯式實(shí)例化委托delegate void SomeDelegate()。public void SomeMethod(){ } SomeDelegate someDelegate = SomeMethod。,注釋縮進(jìn)和其注釋的代碼在同一層次 ,不要有不明語義或者錯(cuò)別字 ,和屬性或方法間空開一行public class MyClass { int m_Number。string m_Name。public void SomeMethod1(){ } public void SomeMethod2(){ } } ,以類名+邏輯部分的方式來命名文件// public partial class MyClass { } // public partial class MyClass { } ,但是大括號(hào)要和委托聲明對(duì)其delegate void SomeDelegate(string someString)。//正確void InvokeMethod(){ SomeDelegate someDelegate = delegate(string name){ (name)。}。someDelegate(“Juval”)。} //錯(cuò)誤void InvokeMethod(){ SomeDelegate someDelegate = delegate(string name){ (name)。}。someDelegate(“Juval”)。},僅當(dāng)匿名方法被用于任何委托時(shí)才可以省略括號(hào)delegate void SomeDelegate()。//正確SomeDelegate someDelegate1 = delegate(){ (“Hello”)。}。//錯(cuò)誤SomeDelegate someDelegate1 = delegate { (“Hello”)。}。,模仿一般的方法規(guī)范。delegate void SomeDelegate(string someString)。SomeDelegate someDelegate =(name)= { (name)。(name)。}。,應(yīng)避免多語句或者返回語句出現(xiàn)在大括號(hào)中??梢院?jiǎn)單使用小括號(hào)表達(dá):delegate void SomeDelegate(string someString)。void MyMethod(SomeDelegate someDelegate){ }//正確MyMethod(name=(name))。//錯(cuò)誤MyMethod((name)={(name)。(name)。})。注釋編寫有用的注釋,不要在注釋中重復(fù)寫代碼語義。應(yīng)該編寫的是解釋方法和原理的說明性注釋。函數(shù)不要在一個(gè)函數(shù)中包含太多內(nèi)容,函數(shù)的功能要簡(jiǎn)單,短小,使人更容易理解,也有利于防錯(cuò)。第二條 盡量在代碼中不包含被警告的內(nèi)容高度重視警告:使用編譯器的最高警告級(jí)別。構(gòu)建盡量做到干凈利落(沒有警告)。理解所有的警告。通過修改代碼而不是降低警告級(jí)別來排除警告。即使程序一開始似乎能夠正確運(yùn)行,也還是要這樣做。即使你能夠肯定警告是良心的,仍然要這樣做。因?yàn)榱夹跃娴谋澈罂赡茈[藏著未來指向真正危險(xiǎn)的警告。項(xiàng)目設(shè)置和項(xiàng)目結(jié)構(gòu)1. 總是以4級(jí)警告建立項(xiàng)目2. 在發(fā)布版中將警告當(dāng)作錯(cuò)誤()3. 永遠(yuǎn)不要抑制特定的編譯警告4. 總是在應(yīng)用程序的配置文件中顯式地說明支持的運(yùn)行時(shí)版本5. 避免顯式的自定義版本改向和綁定到CLR程序集6. 。,不要在任何文件中放程序集屬性(應(yīng)包括公司名稱、描述、版權(quán)等)7. 所有程序集應(yīng)該使用相對(duì)路徑引用 8. 不允許在程序集中循環(huán)引用9. 努力對(duì)同一邏輯應(yīng)用程序中(通常是一個(gè)解決方案)的所有程序集和客戶端使用統(tǒng)一的版本號(hào)10.將Visual ,并將其包括在項(xiàng)目中 11. 將Visual ,對(duì)項(xiàng)目文件夾和文件應(yīng)用統(tǒng)一的結(jié)構(gòu) 12. 一個(gè)發(fā)布版本應(yīng)該包含Debug標(biāo)記第三方頭文件無法修改的庫頭文件可能包含引起警告的構(gòu)造。如果這樣,可以用自己的包含原頭文件的版本將此文件包裝起來,并有選擇的為該作用域關(guān)閉警告,然后在整個(gè)項(xiàng)目的其他地方包含此包裝文件。代碼中盡量不包含未使用的函數(shù),變量經(jīng)確認(rèn)確實(shí)不需要使用的函數(shù),變量(不包括為未來使用而設(shè)的占位符),可以進(jìn)行刪除處理。不要遺漏return語句PS:例外情況有時(shí)候編譯器可能會(huì)發(fā)出一些確實(shí)無意義的警告。這些警告要經(jīng)過團(tuán)隊(duì)確認(rèn)后盡量在局部進(jìn)行屏蔽,但要做出明確的注釋,說明為什么必須禁用。第三條 使用自動(dòng)構(gòu)建系統(tǒng) 第四條 使用版本控制系統(tǒng)應(yīng)確保每次提交的代碼都可以構(gòu)建成功。第五條 定期進(jìn)行代碼審查互相閱讀彼此的代碼不但可以盡快提高自己的編碼水平,也可以相互借鑒更好的方法。第六條 一個(gè)實(shí)體應(yīng)該只有一個(gè)緊湊的職責(zé)一次只解決一個(gè)問題:只給一個(gè)實(shí)體(變量、類、函數(shù)、名稱空間、模塊和庫)賦予一個(gè)定義良好的職責(zé)。應(yīng)該只選擇目的單一的函數(shù),小而且目的單一的類,和邊界清晰的緊湊模塊。應(yīng)該用較小的低層抽象構(gòu)建更高層次的抽象,要避免將幾個(gè)低層抽象集合成一個(gè)較大的低層次抽象聚合體。用幾個(gè)簡(jiǎn)單的行為來實(shí)現(xiàn)一個(gè)復(fù)雜的行為,比反其道而行之更加容易。第七條 正確,簡(jiǎn)單和清晰第一軟件簡(jiǎn)單為美:正確優(yōu)于速度,簡(jiǎn)單優(yōu)于復(fù)雜,清晰優(yōu)于機(jī)巧,安全優(yōu)于不安全。要避免使用程序設(shè)計(jì)語言中的冷僻特性。應(yīng)該使用最簡(jiǎn)單的有效技術(shù)。不要使用不必要的操作符重載構(gòu)造函數(shù)的參數(shù),應(yīng)該使用命名變量,而不要使用臨時(shí)變量這能夠避免可能的聲明二義性,還經(jīng)常能使代碼的意圖更加清晰,從而更容易維護(hù),而且也更安全。第八條 編程中應(yīng)該知道何時(shí)和如何考慮可伸縮性當(dāng)數(shù)據(jù)爆炸性增長(zhǎng)時(shí):不要進(jìn)行不成熟的優(yōu)化,如果能夠證明優(yōu)化必要而且非常重要,則應(yīng)該集中精力改善算法的復(fù)雜性,而不是進(jìn)行小型的優(yōu)化,比如節(jié)省一個(gè)多余的加法運(yùn)算。為了避免未來可能遭遇到的數(shù)據(jù)處理容量上的瓶頸問題,應(yīng)該預(yù)先做這些事情:使用靈活的、動(dòng)態(tài)分配的數(shù)據(jù),不要使用固定大小的數(shù)組那種“比現(xiàn)在所需要的最大數(shù)組還要大”的數(shù)組,在正確性和安全性方面都存在嚴(yán)重問題。只有在編譯時(shí)大小固定不變的數(shù)組才是可接受的。了解算法的實(shí)際復(fù)雜性要留心那些不易發(fā)覺的陷阱,比如看似線性的算法實(shí)際上要調(diào)用其他線性操作,結(jié)果算法實(shí)際上是二次的。優(yōu)先使用線性算法或者盡可能快的算法 盡可能避免劣于線性復(fù)雜性的算法如果面對(duì)的是一個(gè)O(NlogN)或者O(N178。)算法,就必須花費(fèi)精力尋找替代方案,只有代碼才不至于在數(shù)據(jù)量顯著增長(zhǎng)的情況下陷入深度激增的性能深潭。例如:建議使用范圍成員函數(shù)(通常是線性的)而不是反復(fù)調(diào)用單元素替代函數(shù),后者會(huì)很容易在一個(gè)線性的操作要調(diào)用另一個(gè)線性操作時(shí)變成二次復(fù)雜性。永遠(yuǎn)不要使用指數(shù)復(fù)雜性的算法,除非真的別無選擇在決定接受指數(shù)算法之前,必須盡力尋找替代方案,因?yàn)閷?duì)于指數(shù)算法來說,即使是數(shù)據(jù)量的有限增加,也會(huì)使算法的性能急劇下降??偠灾M可能優(yōu)先使用線性(或者更好的)算法,盡可能合理的避免使用比線性算法差的多項(xiàng)式算法。竭盡全力避免使用指數(shù)算法。第九條 不要進(jìn)行不成熟的優(yōu)化我們將不成熟的優(yōu)化定義為這樣的行為:以性能為名,使設(shè)計(jì)或代碼更加復(fù)雜,從而導(dǎo)致可讀性更差,卻沒有經(jīng)過驗(yàn)證的性能需求(比如實(shí)際的度量數(shù)據(jù)與目標(biāo)的比較結(jié)果)作為正當(dāng)理由,因此本質(zhì)上對(duì)程序沒有真正的好處。因此,默認(rèn)時(shí),不要把注意力集中在如何使代碼更快上;首先關(guān)注的應(yīng)該是使代碼盡可能的清晰和易讀。第十條 不要進(jìn)行不必要的劣化所謂不成熟的劣化一詞,指的就是編寫如下這些沒有必要的、可能比較低效的程序:在可以用通過引用傳遞的時(shí)候,卻定義了通過值傳遞的參數(shù) 在使用前綴++操作符很合適的場(chǎng)合,卻使用后綴版本 在構(gòu)造函數(shù)中使用賦值操作而不是初始化列表第十一條 盡量減少全局和共享數(shù)據(jù)共享會(huì)導(dǎo)致沖突:避免共享數(shù)據(jù),尤其是全局?jǐn)?shù)據(jù)。共享數(shù)據(jù)會(huì)增加耦合度,從而降低可維護(hù)性,通常還會(huì)降低性能。名字空間作用域中的對(duì)象、靜態(tài)成員對(duì)象或者跨線程或跨進(jìn)程共享的對(duì)象會(huì)減少多線程和多處理器環(huán)境中的并行性,往往是產(chǎn)生性能和可伸縮性瓶頸的源頭。建議用通信方式(比如消息隊(duì)列)代替數(shù)據(jù)共享。盡量降低類之間的耦合,盡量減少交互第十二條 隱藏信息不要泄密:不要公開提供抽象的實(shí)體的內(nèi)部信息。而應(yīng)該公開抽象(至少是get/set抽象),而不是數(shù)據(jù)。數(shù)據(jù)只是抽象、概念性狀態(tài)的一種可能的具體化而已。如果將注意力集中在概念而不是其表示形式上,就能夠提供富于提示性的接口,并按需要對(duì)實(shí)現(xiàn)進(jìn)行調(diào)整。比如緩存還是實(shí)時(shí)地計(jì)算,又比如使用不同的表示方式,針對(duì)某種使用模式進(jìn)行優(yōu)化。絕對(duì)不要將類的數(shù)據(jù)成員設(shè)為public,僅對(duì)最需要的類型標(biāo)記為public,其他的標(biāo)記為internal。它同樣適用于更大的實(shí)體比如程序庫。模塊和程序庫同樣應(yīng)該提供定義抽象和其中信息流的接口,從而使與調(diào)用代碼的通信比采用數(shù)據(jù)共享方式更安全,耦合度更低。第十三條 盡量在編譯和連接時(shí)檢查錯(cuò)誤,而不要等到運(yùn)行時(shí)運(yùn)行時(shí)檢查取決于控制流和數(shù)據(jù)的具體情況,這意味著很難知道檢查是否徹底。相比而言,編譯時(shí)檢查與控制流和數(shù)據(jù)無關(guān),一般情況下能夠獲得更高的可信度。第十四條 盡量合理的使用const常量不變的值更易于理解、跟蹤和分析,所以應(yīng)該盡可能地使用常量代替變量,定義值的時(shí)候,應(yīng)該把常量作為默認(rèn)的選項(xiàng):常量很安全,在編譯時(shí)會(huì)對(duì)其進(jìn)行檢查。盡量不要強(qiáng)制轉(zhuǎn)換常量的類型。例如:const int x = 0。public const double productWeight = 。private const string productName = “Visual C”。第十五條 避免使用語義不清的參數(shù)。它們本身沒有提供任何說明,并且因?yàn)樵黾恿藱z測(cè)的重復(fù)而使維護(hù)更加復(fù)雜??梢杂梅?hào)名稱和表達(dá)式替換它們,比如width*aspectRatio名稱能夠增加信息,并提供單一的維護(hù)點(diǎn),而程序中到處重復(fù)的原始數(shù)據(jù)是無名的,維護(hù)起來很麻煩。常量應(yīng)該是枚舉或者const值,有合適的作用域和名稱。重要的特定于領(lǐng)域的常量應(yīng)該放在名字空間一級(jí)第十六條 盡可能局部的使用變量 第十七條 避免函數(shù)過長(zhǎng),避免嵌套過深過長(zhǎng)的函數(shù)和嵌套過深的代碼塊的出現(xiàn),經(jīng)常是因?yàn)闆]能賦予一個(gè)函數(shù)以一個(gè)緊湊的職責(zé)所致,這兩種情況通常都能夠通過更好的重構(gòu)予以解決。每個(gè)函數(shù)都應(yīng)該是顧其名而能思其義,易于理解的工作單元,要避免將多個(gè)小概念單元合并到一個(gè)長(zhǎng)的函數(shù)體中的做法。一些建議:盡量緊湊:對(duì)一個(gè)函數(shù)只賦予一種職責(zé)不要自我重復(fù):優(yōu)先使用命名函數(shù),而不要讓相似的代碼片斷反復(fù)出現(xiàn) 優(yōu)先使用amp。amp。:在可以使用amp。amp。條件判斷的地方要避免使用連續(xù)嵌套的if 不要過分使用try 優(yōu)先使用標(biāo)準(zhǔn)算法不要根據(jù)類型標(biāo)簽(type tag)進(jìn)行分支(switch)第十八條 盡量減少定義性依賴,避免循環(huán)依賴循環(huán)依賴是指兩個(gè)模塊直接或者間接地相互依賴。所謂模塊就是一個(gè)緊湊的發(fā)布單元,而互相依賴的多個(gè)模塊并不是真正的獨(dú)立模塊,而是緊緊膠著在一起的一個(gè)更大的模塊,因此,循環(huán)依賴有礙于模塊性,是大型項(xiàng)目的禍根。請(qǐng)避免循環(huán)依賴。第十九條 不要引用多余的資源文件 第二十條 盡量不要重載默認(rèn)的操作符,至少應(yīng)保證操作符的自然語義不被破壞 第二十一條 優(yōu)先使用++和—的標(biāo)準(zhǔn)形式。優(yōu)先調(diào)用前綴形式。第二十二條 用小類代替巨類小類更易于編寫,更易于保證正確、測(cè)試和使用。小類更有可能適用于各種不同情況。應(yīng)該用這種小類體現(xiàn)簡(jiǎn)單概念,不要用大雜燴式的類。第二十三條 要避免使用隱式轉(zhuǎn)換在做類型提供隱式轉(zhuǎn)換之前,請(qǐng)三思而行,應(yīng)該依賴的是顯式轉(zhuǎn)換。隱式轉(zhuǎn)換有兩個(gè)主要的問題: 第二十四條 將數(shù)據(jù)成員設(shè)為私有的,無行為的聚集要避免將公用數(shù)據(jù)和非公用數(shù)據(jù)混合在一起,因?yàn)檫@幾乎總是設(shè)計(jì)混亂的標(biāo)志。信息隱藏是優(yōu)秀軟件工程的關(guān)鍵,應(yīng)該將所有數(shù)據(jù)成員都設(shè)為私有的,這是類用來保持其不變式的最佳方式。第二十五條 不要允許異常跨越模塊邊界傳播最低限度,應(yīng)用程序必須在以下位置有捕獲所有異常的catch(…)兜底語句,其中大多數(shù)都直接適用于模塊::捕獲并用日志記錄任何將使程序不正常終止而其他地方又沒有捕獲的異常。,數(shù)據(jù)庫連接等高危操作附近第二十六條 如有可能,盡量用算法調(diào)用代替手工編寫的循環(huán)對(duì)非常簡(jiǎn)單的循環(huán)而言,手工編寫的循環(huán)有可能是最簡(jiǎn)單也是最有效的解決方案。但是編寫算法調(diào)用代替手工編寫的循環(huán),可以使表達(dá)力更強(qiáng)、維護(hù)性更
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1