欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

這三個技巧,讓你的代碼可讀性提高300%

2021-02-23    分類: 網(wǎng)站建設(shè)

想要作為優(yōu)秀的程序員必須遵守一些不成文的規(guī)定。本文不是在討論算法、數(shù)據(jù)結(jié)構(gòu)、軟件架構(gòu)和程序設(shè)計,而是在討論一些更基本、更重要的東西:可讀性。

源代碼是程序員耗盡了心血和精力的作品,所以不應(yīng)當(dāng)存在“快刀斬亂麻”的現(xiàn)象。忽視這些規(guī)定看似讓代碼生成速度加快,但事實上往往導(dǎo)致事倍功半。

代碼敲一次,閱讀無數(shù)次。因此,優(yōu)化代碼提高可讀性顯得尤為重要。為了幫助生成高度可讀的代碼,本文歸納總結(jié)了必須遵守的3個重要規(guī)定。遵循這些規(guī)則可以幫助使用代碼的人員維護、擴展和調(diào)整代碼。此外,可讀性高的代碼更不容易出錯。

這三個技巧最好的地方在于:可以立即實現(xiàn)。不需要訓(xùn)練時間。僅僅需要幾分鐘就能蛻變成更優(yōu)秀的程序員!

使用描述性的變量和函數(shù)名

程序代碼往往包含上千單詞。當(dāng)然,也有篇幅較短的代碼。使用自解釋變量和函數(shù)名使代碼更容易閱讀、理解、維護和后續(xù)擴展。舉個例子:

在編寫這段代碼時,開發(fā)人員確切地知道要實現(xiàn)的是哪種功能。但是,其他人能理解嗎?這就要看靈感和緣分了。開發(fā)人員可以添加一條注釋來描述這段代碼的用途,但是使用描述性變量名能夠更直觀地告訴讀者相關(guān)信息,比如:

看!現(xiàn)在是不是更容易理解了。僅通過使用描述性變量名,讀者就可以立即了解該代碼能將華氏溫度(Fahrenheit)轉(zhuǎn)換為攝氏溫度(Celsius)?,F(xiàn)在定義一個函數(shù)實現(xiàn)上述代碼功能,并觀察根據(jù)函數(shù)名和參數(shù)名對可讀性的影響程度。

“簡短”版:

“細(xì)節(jié)補充”版:

很明顯:比起只用單個字母表示變量和函數(shù)名的“簡短”版,“細(xì)節(jié)補充”版需要花費更多的打字時間。

但是,理解這兩個版本的代碼又需要多長時間呢? 自解釋代碼不僅為讀者節(jié)省了許多理解代碼的時間,同時也為開發(fā)人員節(jié)省大量時間。為了更改程序細(xì)節(jié)或者編寫拓展程序,開發(fā)人員經(jīng)常需要回顧數(shù)月前編寫的代碼。然后就一臉懵的看著屏幕:“我滴個神啊,我都寫了啥?任何可以優(yōu)化閱讀性的方法都值得付出額外的打字時間。

使用適當(dāng)?shù)目s進(jìn)

因為Guido van Rossum 決定在他設(shè)計的Python編程語言中強制執(zhí)行縮進(jìn),所以使用Python進(jìn)行編程的讀者可以跳過本節(jié)。

如果使用的是如C、C++、Java、JavaScript、PHP、C#、PHP等其他受眾良多的編程語言,那么牢記這條技巧:

按層次縮進(jìn)代碼。

可以使用制表符或者空格,空格按3次或者按4次也可按照開發(fā)人員的喜好而定。只要記住縮進(jìn)在編程中是必須的就OK了。接下來通過比較一些JavaScript代碼來進(jìn)一步說明。這段代碼:

  • 將100至110華氏度換算成相應(yīng)攝氏度。
  • 將轉(zhuǎn)換后的值四舍五入至個位(使數(shù)據(jù)變?yōu)檎麛?shù))。
  • 將所有偶數(shù)攝氏度值輸出到控制臺(這是通過使用模數(shù)運算符”%”完成的,該操作符返回整數(shù)除法的余數(shù)。因此,11% 2 =1,12% 2 = 0)

沒有縮進(jìn)的版本:

有縮進(jìn)的版本:

代碼中還添加了一些空白行來進(jìn)一步結(jié)構(gòu)化代碼。這兩段代碼中哪個的可讀性更高呢?

恰當(dāng)?shù)厥褂煤瘮?shù)

通過使用函數(shù)可以構(gòu)建可重復(fù)使用的代碼塊。這些還可以使代碼更結(jié)構(gòu)化、更具可讀性和可理解性。能夠避免重復(fù)的代碼是函數(shù)最重要的特性。

定義函數(shù)(或類、模塊等等,這取決于使用哪種編程語言)可以解決在代碼庫中多次出現(xiàn)相同的代碼段的冗雜狀態(tài)。下述示例就是很好的示范:

上述代碼輸出華氏度數(shù)值和相應(yīng)的攝氏度數(shù)值。很明顯,上述代碼存在重復(fù)性代碼段,這種情況下創(chuàng)建一個函數(shù)就可以更快速地完成上述功能:

更清爽對吧!代碼看起來更干凈、更簡潔。而且,它比前一個示例更具描述性。那個公式只會在定義ConvertAndPrint函數(shù)時出現(xiàn)一次。如果只是想把華氏度轉(zhuǎn)換成攝氏度但是不顯示這些數(shù)據(jù)呢?可以通過定義不同的函數(shù)來實現(xiàn):

有木有!這種方法構(gòu)建了含有自解釋代碼的構(gòu)建塊,以便在不同的程序設(shè)計段中以多種方式重復(fù)調(diào)用這些構(gòu)建塊。

到這就結(jié)束了?No!

還是有的地方代碼重復(fù)性很高啊。PrintFahrenheitAndCelsius 函數(shù)需要輸入4個值。那么只想轉(zhuǎn)換3個值的時候怎么辦呢?想轉(zhuǎn)換300個值的時候又該怎么辦呢?當(dāng)然有一個更好的方法!

根據(jù)使用的編程語言不同,抽象化函數(shù)的參數(shù)數(shù)量的方法可能不太一樣。但是,大多數(shù)開發(fā)人員會通過使用容器(如矩陣或者List)解決這個問題。

最后的改變使函數(shù)更優(yōu)越:

  • 它更短,更容易閱讀,
  • 限制更少,更加通用。

結(jié)語

遵循一些簡單的規(guī)定(規(guī)范化指導(dǎo))能使源代碼將更容易閱讀(從而進(jìn)一步理解、維護和擴展)。

同時,使用函數(shù)(或者其他編程語言的任何抽象方法)來創(chuàng)建可重復(fù)調(diào)用的構(gòu)建塊,抽象化參數(shù)使代碼限制更少、適用范圍增大。

對函數(shù)和變量恰當(dāng)?shù)刂匦旅梢栽黾釉创a的可讀性。就像讀故事一樣清晰、簡單、容易理解。

使用這三個技巧,手中的代碼將宛若重獲新生,熠熠生輝。

網(wǎng)站名稱:這三個技巧,讓你的代碼可讀性提高300%
網(wǎng)站鏈接:http://aaarwkj.com/news21/102471.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、虛擬主機面包屑導(dǎo)航、商城網(wǎng)站、搜索引擎優(yōu)化軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
人妻天天爽夜夜爽欧美色| 亚洲一区二区三区免费在线看| 亚洲ve中文字幕久久一区二区| 欧美国产精品久久综合| 中文字幕日韩欧美一区在线| 五月婷婷色综合激情五月| 国产精品美女黄色av| 一区二区三区日韩激情| 粉嫩一区二区三区在线| 久久婷婷国产综合精品青草| 国产自拍在线视频精品| 日本一区二区在线高清| 偷拍丝袜美腿在线观看| 日本成人一区二区三区在线| 国产91久久精品一区二区| 日韩精品一区高清视频| 国产在线91精品入口| 日韩欧美精品一区二区三区四区| 99热视频在线观看免费| 人人人妻人人澡人人爽e| 婷婷91麻豆精品国产人妻| 日本成人一区二区在线播放| 亚洲日本国产精品一区| 日韩精品一区二区一牛| 国产亚洲精品视频在线网| 很黄无遮挡在线免费网站| 91一区二区亚洲嫩草| 精品一区二区久久久久久| 91精品国产自产在线观看| 最新日韩人妻中文字幕一区| 青青草视频在线好好热| 大龄熟妇丰满有水多毛浓| 国产又粗又硬又长又爽在线观看| 日韩精品电影一区在线观看| 一区二区三区成人高清视频| 深夜成人免费观看视频| 国内自拍韩国资源在线| 久久香蕉国产线看观看av| 日韩精品一区二区91| 国产一区二区精品久久岳√| 涩五月婷婷开心中文字幕|