官术网_书友最值得收藏!

3.6 良好的編程習(xí)慣

C++/C語言靈活而又復(fù)雜,有經(jīng)驗(yàn)的C++/C程序員往往會因?yàn)樽约耗軌蛞砸恍┕殴值摹┈嵍至钊死Щ蟮姆绞绞褂盟凑醋韵病5@并非就是良好的編程習(xí)慣,也不能產(chǎn)生高質(zhì)量的代碼。

【建議3-1】: 應(yīng)該用簡單而直接的方式編寫C++/C程序,這就叫做KIS(Keep It Simple)編程準(zhǔn)則。不要毫無章法地“濫用”語言。

高質(zhì)量的代碼源于高質(zhì)量的設(shè)計(jì)和良好的編程風(fēng)格。

在設(shè)計(jì)上要追求簡單和低耦合。許多遺留的程序錯(cuò)誤解決不了,在很大程度上是因?yàn)樵O(shè)計(jì)本身存在不必要的復(fù)雜部分。什么是好的設(shè)計(jì)?一個(gè)好的設(shè)計(jì)應(yīng)該恰如其分地反映和解決一個(gè)具體的問題,即解決方案與問題一致,沒有不必要的特性。在面向?qū)ο蠓治龊驮O(shè)計(jì)(OOA&D)中,耦合性用來衡量不同對象之間和不同模塊之間的依賴程度。好的設(shè)計(jì)應(yīng)該盡量降低對象之間和模塊之間的耦合性。松耦合的程序易于理解、易于實(shí)現(xiàn)、易于測試和維護(hù)。

一個(gè)良好的編程習(xí)慣可以用于任何編程語言中,用它生產(chǎn)的代碼不僅容易閱讀、容易理解,而且易于調(diào)試和測試。良好的編程風(fēng)格是良好的編程習(xí)慣的具體表現(xiàn)。書寫的代碼結(jié)構(gòu)安排要合理,版式要清晰一致,給標(biāo)識符取個(gè)“自說明”的名字,不要使用過于復(fù)雜的語句和表達(dá)式,使用清晰的注釋等,這些都是建立良好的編程風(fēng)格的指導(dǎo)原則。

有的程序員認(rèn)為,越是能夠正確地使用復(fù)雜語句書寫代碼,這個(gè)人的水平就越高,這種觀念太偏激。偉大的軟件不一定就是用復(fù)雜的編程技巧實(shí)現(xiàn)的。實(shí)際上,軟件的質(zhì)量乃至代碼的質(zhì)量與編程技巧沒有必然的聯(lián)系。且不說復(fù)雜語句是否真的正確,光是調(diào)試和測試這樣的語句就很困難,而且維護(hù)代碼的人不一定能正確地理解它們的語義。

這就好比我們騎自行車上班,本來在自行車道上走得好好的,突然躥到了機(jī)動車道上,雖然你的車技很好,機(jī)動車道也不是不能走,但是難保不發(fā)生交通事故。

良好的編程習(xí)慣不是一天就能養(yǎng)成的。本書從第5章開始將在這方面給出一些通用的指導(dǎo)和建議。

【提示3-1】: 雖然C++/C與硬件無關(guān),具有很高的可移植性,但是不同的語言實(shí)現(xiàn)及不同的硬件平臺之間必然存在許多兼容性問題,它們增加了C++/C程序的移植難度。所以,并不是說用C++/C編寫的程序就能保證絕對的可移植性,程序員需要進(jìn)行針對編譯器和機(jī)器平臺的良好的可移植性設(shè)計(jì),并把這種可移植性內(nèi)建在程序代碼中。

主站蜘蛛池模板: 衡水市| 平原县| 理塘县| 大方县| 康保县| 同江市| 元谋县| 棋牌| 彩票| 锦州市| 措勤县| 凯里市| 汉川市| 左权县| 四子王旗| 商丘市| 灯塔市| 安岳县| 庄河市| 古交市| 九寨沟县| 上杭县| 海晏县| 南靖县| 竹山县| 资兴市| 冷水江市| 兰西县| 清丰县| 禹州市| 蛟河市| 林甸县| 仪征市| 专栏| 仁怀市| 江西省| 玛纳斯县| 龙里县| 东丰县| 右玉县| 灵宝市|