自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

開(kāi)發(fā)者應(yīng)該具備的15個(gè)編程好習(xí)慣

開(kāi)發(fā) 前端
這是國(guó)外程序員Al katib總結(jié)的一些編程習(xí)慣。

1. 動(dòng)手編碼之前,你需要對(duì)要編碼實(shí)現(xiàn)的解決方案有一個(gè)正式的或粗略的設(shè)計(jì)。永遠(yuǎn)不要在沒(méi)有任何設(shè)計(jì)的前提下就開(kāi)始編碼,除非所編代碼不重要。

2. 優(yōu)秀的代碼文檔跟編程語(yǔ)言知識(shí)一樣重要。在代碼源文件中,為每個(gè)主要的代碼段添加注釋,解釋代碼的基本邏輯。最好注明程序的構(gòu)建和修改日期,以及修改的原因也是非常有必要的。

3. 維護(hù)程序的各個(gè)版本同樣重要。當(dāng)前有些編程工具都自帶一個(gè)版本管理工具。無(wú)論你什么時(shí)候改變自己的程序,它們都會(huì)將其保存為.bak文件。

我的方法是為每個(gè)程序維護(hù)三個(gè)不同的版本。比如說(shuō),我有一個(gè)名為program.c的文件,這個(gè)文件同時(shí)也被其他項(xiàng)目組成員使用。我把這個(gè)文件復(fù)制為 program.c.old作為備份文件,并且當(dāng)我修改時(shí),我會(huì)備份另一個(gè)名為program.c.wrk的副本文件。當(dāng)成功完成修改時(shí)替換 program.c.wrk文件。

你還可以給自己的程序版本添加一個(gè)日期或一些注釋,像program260505.c或programReadFnWrking.c。

4. 如果工程包含多個(gè)源文件,則聲稱一個(gè)README文件,注明每個(gè)源文件、數(shù)據(jù)文件、臨時(shí)文件以及日志文件(如果有的話)的作用。你還可以注明編譯和運(yùn)行步驟。

5. 有時(shí)候,你一定想知道為什么IF語(yǔ)句沒(méi)有得到預(yù)想的結(jié)果??赡苣闶褂玫氖堑忍?hào),也就是“=”,而不是條件判定符號(hào)“==”。一個(gè)比較好的辦法是用相反的順序?qū)憲l件語(yǔ)句。因此,你的條件語(yǔ)句應(yīng)該如下:

if(10==i)…因此,如果你錯(cuò)誤地寫(xiě)成了單個(gè)等于號(hào),在編譯的時(shí)候也能檢查出來(lái)并報(bào)錯(cuò)。

6.使用循環(huán)和條件語(yǔ)句時(shí),先把左右括號(hào)對(duì)應(yīng)起來(lái),然后再在里面寫(xiě)其他語(yǔ)句。

也就是:for(int i=0;i<10;i++){printf(“i=%dn”,i);}

注:每一行開(kāi)頭的數(shù)字表明寫(xiě)循環(huán)代碼的順序。

7. 避免使用幻數(shù)(magic numbers)。例如,不要寫(xiě)

  1. circleArea = 3.14 * pow(radius,2); 

而要使用如下代碼:

  1. #define PI 3.14  
  2.  
  3. circleArea = PI * pow(radius,2); 

8. 使用有意義的變量和函數(shù)名稱。例如,使用‘radius’來(lái)代替圓的半徑,而不是用‘r’來(lái)表示。同樣,函數(shù)名‘calculateArea’要比其他任 何隱晦的縮寫(xiě)要好得多。匆忙之下,我們也許會(huì)使用縮寫(xiě)的變量名,但一開(kāi)始節(jié)省時(shí)間的話,之后會(huì)浪費(fèi)更多的時(shí)間,去猜測(cè)縮寫(xiě)變量名代表什么。(編注:)

9. 為后面的調(diào)試使用打印語(yǔ)句,這是個(gè)好習(xí)慣。但是,當(dāng)完成最后代碼后,去掉這些語(yǔ)句,有時(shí)也是一項(xiàng)危險(xiǎn)的任務(wù)。添加一個(gè)方法,用于輸出調(diào)試信息。當(dāng)最終版本生成時(shí),只要把這個(gè)方法注釋掉就行。因此,只在一個(gè)地方做修改就可以了。

10. 代碼編寫(xiě)完之后,開(kāi)始優(yōu)化代碼。之前聲明的一些變量,現(xiàn)在可能沒(méi)用了。同樣,并不依賴循環(huán)的一些聲明可以移到循環(huán)模塊之外去。扎實(shí)的編譯知識(shí)同樣會(huì)對(duì)以后的代碼優(yōu)化有所幫助。

11. 對(duì)自己的操作系統(tǒng)和硬件要有足夠的了解,你可以從資源占用等方面提升程序的性能。

12. 編寫(xiě)代碼時(shí)要合理使用縮進(jìn),以使代碼清晰可讀。

13. 把項(xiàng)目文件放到SOURCE、HEADERS、MAKE、EXES等不同的文件夾中。

14. 研究別人編寫(xiě)的代碼。這可以讓你學(xué)習(xí)到新的編程技術(shù),以及他們解決和你相同的任務(wù)時(shí)所使用的方法。

15. 最后一條(但不是最不重要的一條),備份源代碼文件,這樣當(dāng)硬盤(pán)出錯(cuò)或相同的問(wèn)題發(fā)生時(shí),不至于前功盡棄。

附加:補(bǔ)充一條,堅(jiān)持使用一種命名模式。如果你打算用匈牙利命名法,那就堅(jiān)持并廣泛使用,否則將適得其反。
 

【編輯推薦】

  1. 程序員那些悲催的事兒 你可曾遇到
  2. 程序員的另類境界:Rails創(chuàng)始人駕保時(shí)捷參加職業(yè)賽
  3. 程序員應(yīng)該具備的11項(xiàng)基本技能
  4. 開(kāi)發(fā)人員、程序員與計(jì)算機(jī)科學(xué)家三者的差別
  5. 在西方程序員眼里 東方的程序員是什么樣的?
責(zé)任編輯:陳貽新 來(lái)源: 伯樂(lè)在線
相關(guān)推薦

2011-03-29 12:41:49

編程

2011-06-14 17:50:47

SEO

2022-10-24 00:44:32

IO遠(yuǎn)程操作數(shù)據(jù)庫(kù)

2018-10-16 11:03:19

API開(kāi)發(fā)者AR

2015-11-12 09:24:56

2014-10-24 10:13:19

程序員

2020-02-18 10:11:11

機(jī)器學(xué)習(xí)技術(shù)人工智能

2009-01-03 14:34:49

ibmdwPHP

2009-01-03 10:40:41

PHP編程代碼

2020-04-22 10:35:07

編程學(xué)習(xí)技術(shù)

2020-01-10 09:00:00

開(kāi)發(fā)者編程習(xí)慣編程方式

2023-12-26 18:43:45

Java開(kāi)發(fā)者趨勢(shì)

2024-09-02 14:30:43

2020-07-09 14:44:10

開(kāi)發(fā)技能團(tuán)隊(duì)

2012-11-13 10:34:03

PythonWeb

2013-09-03 09:54:15

Web開(kāi)發(fā)

2012-10-11 10:43:26

開(kāi)發(fā)SQL

2011-10-11 10:07:37

2015-03-25 11:12:35

iOS開(kāi)發(fā)

2022-07-04 08:00:00

Web開(kāi)發(fā)人員編程習(xí)慣程序員
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)