成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳述編寫規范易懂C++代碼介紹

開發 后端
在C++代碼中做了大量的判斷和假設,造成代碼結構的破壞和執行效率的損失,最后,調用者依舊不能確保自己的調用是正確的。

本節介紹Visual C++ 6.0工具的開發環境和開發流程,本部分教程主要介紹了良好的C++代碼,Visual C++ 6.0就是微軟公司推出的C++開發工具,是使用最廣的開發工具,下面就進行學習。

1 規范易懂的代碼

現階段軟件開發,都要依靠團隊的合作。程序員不再是個人英雄主義的代名詞,程序員一方面要依賴大量其他程序員完成的代碼,一方面又提供大量代碼給其他人使用,代碼實際上具備了兩個要素:首先是可靠的提供某種功能,其次是清楚地表達作者的思想。任何交流都必須有一定的規范才能進行,體現在代碼中就是規范易懂。另外,規范易懂的代碼才是可重復使用的,規范的代碼具有更長的壽命,具有更好的可維護性,也更方便后期的擴展。

好代碼的幾個特征

怎么樣的代碼才算規范易懂,體現在細節上會有無數的爭論,實際上無論風格和習慣如何,好的代碼具有幾個共同的特征:

1. 良好的命名:好的變量名和函數名,讓閱讀代碼的人馬上就知道該變量或者函數的作用,很容易就能理解程序的大概結構和功能。程序員有必要理解匈牙利命名法。
2. 一致性:一致性帶來更好的程序,一致的代碼縮進風格能夠顯示出代碼的結構,采用何種縮進風格并不重要,實際上,特定的代碼風格遠沒有一致的使用它們重要。
3. 注釋:注釋是幫助程序讀者的一種手段,程序作者也是未來的程序讀者之一。***的注釋是簡潔地點明程序的突出特征,或是提供一種概觀,幫助別人理解程序;但如果注釋只是說明代碼已經講明的事情,或者與代碼矛盾,或者以精心編排的形式迷惑干擾讀者,那就是幫了倒忙。

養成好習慣

前面已經提過,特定的C++代碼風格遠沒有一致的使用他們重要,所以,把過多的精力放到A or B的選擇上是浪費時間,你要做的是堅持。如何書寫規范易懂的代碼,如何養成良好的習慣,下面是一些提示。

1. 按照匈牙利命名法給變量和函數命名。
2. 遵循國際流行的代碼風格。
3. 寫代碼的同時就遵循你的命名規范和書寫風格,千萬不能事后補救。
4. 利用工具(Parasoft C++ Test)檢查你的代碼,評估一下自己形成良好的習慣沒有。
5. 堅持不懈直到養成習慣。

編寫安全可靠的代碼

在大型應用軟件系統中,各個代碼片段共同構成完整的系統,代碼間的交互非常頻繁,程序崩潰往往并不在錯誤發生的時候就發生,而是延遲了一段時間,經過數個函數之間的中轉后才發生,此時定位和查找錯誤非常費時費力,如何才能及時反映程序中的錯誤,如何在代碼中避免一些幼稚的語義錯誤呢?一個函數往往會被其他程序員拿來使用,但是他怎么能夠正確的使用其他人編寫的函數呢?這部分內容能夠(部分)幫助解決這些問題。

契約編程
契約編程(Design by Contract)的思想在C++圣經級的著作,C++代碼之父Bjarne Stroustrup的《C++程序設計語言》中略微提到過,OO領域的圣經級著作《面向對象軟件構造》以大篇幅闡釋了契約編程,現在越來越多的軟件開發人員認識到契約編程的重要性,并逐步地在實際工作中采用契約編程。

對契約編程簡單的解釋是:對實現的代碼塊(函數、類)通過規定調用條件(約束)和輸出結果,在功能的實現者和調用者之間定義契約。
具體到我們的工作,開發人員應該對完成的每個函數和類,定義契約。契約編程看似平淡無奇,對程序開發沒有什么具體的幫助,實際上,契約編程在開發階段就能夠***程度的保證軟件的可靠性和安全性。

在實際工作中,每當你需要使用其他程序員提供的模塊,你并不知道如何調用,也不知道你傳入的參數是否合法,有時候對于功能模塊的處理結果也不敢相信。這些本來應該很明顯的信息因為模塊提供者沒有顯式的提供。

造成了調用者只能忐忑不安的摸著石頭過河,浪費了大量時間,而且為了讓自己的代碼更安全可靠,在代碼中做了大量的判斷和假設,造成代碼結構的破壞和執行效率的損失,***,調用者依舊不能確保自己的調用是正確的。

而契約編程通過嚴格規定函數(或類)的行為,在功能提供者和調用者之間明確了相互的權利和義務,避免了上述情況的發生,保證了C++代碼質量和軟件質量。

責任編輯:chenqingxiang 來源: 天極
相關推薦

2010-01-26 13:14:48

2010-01-12 14:16:31

Visual C++語

2010-01-08 17:06:52

C++代碼

2010-01-14 14:40:21

C++代碼

2010-01-11 16:59:50

C++源代碼

2010-08-31 13:32:12

CSS

2024-04-23 08:01:20

面向對象C 語言代碼

2024-07-10 18:51:52

2010-01-12 11:03:04

C++庫

2010-01-15 18:46:08

C++程序代碼

2009-08-13 13:38:30

C#命名規范

2010-01-15 10:41:06

CC++

2010-03-26 16:17:24

Python嵌入

2010-01-12 18:16:12

C++語言

2010-01-15 15:52:18

CC++

2010-01-26 10:27:43

C++語言

2009-08-19 09:57:01

C++ RAII

2010-01-11 11:27:25

C++語言

2010-01-12 15:03:33

C++代碼

2010-01-11 15:47:37

C++編譯
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品高潮呻吟久久 | 成人在线播放网站 | 操人视频在线观看 | 综合色在线 | 国产精品福利网站 | 视频一区二区在线观看 | 中文字幕av一区 | 日韩一区二区三区在线 | 久久久av一区 | 人人爽日日躁夜夜躁尤物 | 黄色大片免费网站 | 在线免费中文字幕 | 久久国产一区二区 | 免费在线视频一区二区 | 午夜av成人 | 天天插天天射天天干 | 欧美精品在线看 | 婷婷五月色综合 | 欧美二区在线 | 国产成人一区二区三区 | 天堂网中文| 一区二区免费视频 | 天天操夜夜操 | www精品美女久久久tv | 欧美a在线看 | 精品毛片视频 | 91青青草视频 | 成人国产一区二区三区精品麻豆 | 日韩精品一区二区三区在线播放 | 午夜免费av| 伊人亚洲| 日韩中文字幕av | 国产免费av在线 | 欧美精三区欧美精三区 | 免费三级网 | 自拍偷拍一区二区三区 | 先锋资源吧 | 久久婷婷国产麻豆91 | 成人精品高清 | 久久久久久免费毛片精品 | 在线视频亚洲 |