更新時間:2017-05-04 15:14 來源:動力節(jié)點(diǎn) 瀏覽3510次
程序猿最害怕看到和聽到的一個字就是:bug!當(dāng)初剛開始學(xué)編程的時候,報錯能有幾百個,寫一小串代碼,給報幾百個錯,看著也是醉了!望著滿屏的紅叉叉,其實(shí)自己的內(nèi)心是崩潰的……
這個場景大家自覺腦補(bǔ)一下,初學(xué)者是不是會經(jīng)常遇到呢?一切原因皆起于習(xí)慣問題,養(yǎng)成一個好習(xí)慣,在編程的道路上就會事半功倍。反之,有一種生無可戀的感覺涌上心頭!
今天動力節(jié)點(diǎn)的Java老師為我們大家?guī)砹藥c(diǎn)Java程序員在寫程序代碼的時候的習(xí)慣小建議,看看是否對你有所幫助呢?
1.動手編碼之前,你需要對要編碼實(shí)現(xiàn)的解決方案有一個正式的或粗略的設(shè)計(jì)。永遠(yuǎn)不要在沒有任何設(shè)計(jì)的前提下就開始編碼,除非所編代碼不重要。
2.優(yōu)秀的代碼文檔跟編程語言知識一樣重要。在代碼源文件中,為每個主要的代碼段添加注釋,解釋代碼的基本邏輯。最好注明程序的構(gòu)建和修改日期,以及修改的原因也是非常有必要的。
3.維護(hù)程序的各個版本同樣重要。當(dāng)前有些編程工具都自帶一個版本管理工具。無論你什么時候改變自己的程序,它們都會將其保存為.bak文件。
4.如果工程包含多個源文件,則聲稱一個README文件,注明每個源文件、數(shù)據(jù)文件、臨時文件以及日志文件(如果有的話)的作用。你還可以注明編譯和運(yùn)行步驟。
5.有時候,你一定想知道為什么IF語句沒有得到預(yù)想的結(jié)果。可能你使用的是等號,也就是“=”,而不是條件判定符號“==”。一個比較好的辦法是用相反的順序?qū)憲l件語句。因此,你的條件語句應(yīng)該如下:
if(10==i)…因此,如果你錯誤地寫成了單個等于號,在編譯的時候也能檢查出來并報錯。
6.使用循環(huán)和條件語句時,先把左右括號對應(yīng)起來,然后再在里面寫其他語句。也就是:
代碼:
for(inti=0;i<10;i++)
{
printf(“i=%dn”,i);
}
注:每一行開頭的數(shù)字表明寫循環(huán)代碼的順序。
7.避免使用幻數(shù)(magicnumbers)。例如,不要寫
代碼:
circleArea=3.14*pow(radius,2);
而要使用如下代碼:
代碼:
#definePI3.14
circleArea=PI*pow(radius,2)。
8.使用有意義的變量和函數(shù)名稱。例如,使用‘radius’來代替圓的半徑,而不是用‘r’來表示。同樣,函數(shù)名‘calculateArea’要比其他任何隱晦的縮寫要好得多。匆忙之下,我們也許會使用縮寫的變量名,但一開始節(jié)省時間的話,之后會浪費(fèi)更多的時間,去猜測縮寫變量名代表什么。
9.為后面的調(diào)試使用打印語句,這是個好習(xí)慣。但是,當(dāng)完成最后代碼后,去掉這些語句,有時也是一項(xiàng)危險的任務(wù)。添加一個方法,用于輸出調(diào)試信息。當(dāng)最終版本生成時,只要把這個方法注釋掉就行。因此,只在一個地方做修改就可以了。
10.代碼編寫完之后,開始優(yōu)化代碼。之前聲明的一些變量,現(xiàn)在可能沒用了。同樣,并不依賴循環(huán)的一些聲明可以移到循環(huán)模塊之外去。扎實(shí)的編譯知識同樣會對以后的代碼優(yōu)化有所幫助。
11.對自己的操作系統(tǒng)和硬件要有足夠的了解,你可以從資源占用等方面提升程序的性能。
12.編寫代碼時要合理使用縮進(jìn),以使代碼清晰可讀。
13.把項(xiàng)目文件放到SOURCE、HEADERS、MAKE、EXES等不同的文件夾中。
14.研究別人編寫的代碼。這可以讓你學(xué)習(xí)到新的編程技術(shù),以及他們解決和你相同的任務(wù)時所使用的方法。
15.最后一條(但不是最不重要的一條),備份源代碼文件,這樣當(dāng)硬盤出錯或相同的問題發(fā)生時,不至于前功盡棄。
最后動力節(jié)點(diǎn)Java培訓(xùn)的老師提醒大家的是:堅(jiān)持使用一種命名模式!這個真的是很重要的!初學(xué)者,你get到了嗎?祝愿大家在碼農(nóng)的道路上越走越順暢!人生是美好的,學(xué)習(xí)是無止境的,代碼時艱難的,請珍惜在有限的生命里更好的學(xué)習(xí)代碼,寫好代碼!
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743