計算機等級考試四級上機編程修養(上)

什麼是好的程式設計師?是不是懂得很多技術細節?還是懂底層編程?還是編程速度比較快?
我覺得都不是。對於一些技術細節來說和底層的技術,只要看幫助,查資料就能找到,對
於速度快,只要編得多也就熟能生巧了。

我認為好的程式設計師應該有以下幾方面的素質:

1、有專研精神,勤學善問、舉一反三。
2、積極向上的態度,有創造性思維。
3、與人積極交流溝通的能力,有團隊精神。
4、謙虛謹慎,戒驕戒燥。
5、寫出的代碼質量高。包括:代碼的穩定、易讀、規範、易維護、專業。

這些都是程式設計師的修養,這裡我想談談“編程修養”,也就是上述中的第5點。我覺得,如
果我要了解一個作者,我會看他所寫的小說,如果我要了解一個畫家,我會看他所畫的圖
畫,如果我要了解一個工人,我會看他所做出來的產品,同樣,如果我要了解一個程式設計師
,我想首先我最想看的就是他的程式代碼,程式代碼可以看出一個程式設計師的素質和修養,
程式就像一個作品,有素質有修養的程式設計師的作品必然是一圖精美的圖畫,一首美妙的歌
曲,一本賞心悅目的小說。

我看過許多程式,沒有注釋,沒有縮進,胡亂命名的變數名,等等,等等,我把這種人統
稱為沒有修養的程式,這種程式設計師,是在做創造性的工作嗎?不,完全就是在搞破壞,他
們與其說是在編程,還不如說是在對源程式進行“加密”,這種程式設計師,見一個就應該開
除一個,因為他編的程式所創造的價值,遠遠小於需要在上面進行維護的價值。

程式設計師應該有程式設計師的修養,那怕再累,再沒時 間,也要對自己的程式負責。我寧可要那
種動作慢,技術一般,但有良好的寫程式風格的程式設計師,也不要那種技術強、動作快的“
搞破壞”的程式設計師。有句話叫“字如其人”,我想從程式上也能看出一個程式設計師的優劣。
因為,程式是程式設計師的作品,作品的好壞直截關係到程式設計師的聲譽和素質。而“修養”好
的程式設計師一定能做出好的程式和軟體。



有個成語叫“獨具匠心”,意思是做什麼都要做得很專業,很用心,如果你要做一個“匠
”,也就是造詣高深的人,那么,從一件很簡單的作品上就能看出你有沒有“匠”的特性
,我覺得做一個程式設計師不難,但要做一個“程式匠”就不簡單了。編程式薌虻ィ但編?nbsp;
有質量的程式就難了。


我在這裡不討論過深的技術,我只想在一些容易讓人忽略的東西上說一說,雖然這些東西
可能很細微,但如果你不注意這些細微之處的話,那么他將會極大的影響你的整個軟體質
量,以及整個軟體程的實施,所謂“千里之堤,毀於蟻穴”。

“細微之處見真功”,真正能體現一個程式的功底恰恰在這些細微之處。

這就是程式設計師的——編程修養。我總結了在用c/c 語言(主要是c語言)進行程式寫作上
的三十二個“修養”,通過這些,你可以寫出質量高的程式,同時也會讓看你程式的人漬
漬稱道,那些看過你程式的人一定會說:“這個人的編程修養不錯”。

01、著作權和版本
02、縮進、空格、換行、空行、對齊
03、程式注釋
04、函式的[in][out]參數
05、對系統調用的返回進行判斷
06、if 語句對出錯的處理
07、頭檔案中的#ifndef
08、在堆上分配記憶體
09、變數的初始化
10、h和c檔案的使用


11、出錯信息的處理
12、常用函式和循環語句中的被計算量
13、函式名和變數名的命名
14、函式的傳值和傳指針
15、修改別人程式的修養
16、把相同或近乎相同的代碼形成函式和宏
17、表達式中的括弧
18、函式參數中的const
19、函式的參數個數
20、函式的返回類型,不要省略
21、goto語句的使用
22、宏的使用
23、static的使用
24、函式中的代碼尺寸
25、typedef的使用
26、為常量聲明宏
27、不要為宏定義加分號
28、||和&&的語句執行順序
29、儘量用for而不是while做循環
30、請sizeof類型而不是變數
31、不要忽略warning
32、書寫debug版和release版的程式
21、goto語究 使勁
22、宏的使用
23、static的使用
24、函式中的代碼尺寸
25、typedef的使用
26、為常量聲明宏
27、不要為宏定義加分號
28、||和&&的語句執行順序
29、儘量用for而不是while做循環
30、請sizeof類型而不是變數
31、不要忽略warning
32、書寫debug版和release版的程式

什麼是好的程式設計師?是不是懂得很多技術細節?還是懂底層編程?還是編程速度比較快?
我覺得都不是。對於一些技術細節來說和底層的技術,只要看幫助,查資料就能找到,對
於速度快,只要編得多也就熟能生巧了。

我認為好的程式設計師應該有以下幾方面的素質:

1、有專研精神,勤學善問、舉一反三。
2、積極向上的態度,有創造性思維。
3、與人積極交流溝通的能力,有團隊精神。
4、謙虛謹慎,戒驕戒燥。
5、寫出的代碼質量高。包括:代碼的穩定、易讀、規範、易維護、專業。

這些都是程式設計師的修養,這裡我想談談“編程修養”,也就是上述中的第5點。我覺得,如
果我要了解一個作者,我會看他所寫的小說,如果我要了解一個畫家,我會看他所畫的圖
畫,如果我要了解一個工人,我會看他所做出來的產品,同樣,如果我要了解一個程式設計師
,我想首先我最想看的就是他的程式代碼,程式代碼可以看出一個程式設計師的素質和修養,
程式就像一個作品,有素質有修養的程式設計師的作品必然是一圖精美的圖畫,一首美妙的歌
曲,一本賞心悅目的小說。

我看過許多程式,沒有注釋,沒有縮進,胡亂命名的變數名,等等,等等,我把這種人統
稱為沒有修養的程式,這種程式設計師,是在做創造性的工作嗎?不,完全就是在搞破壞,他
們與其說是在編程,還不如說是在對源程式進行“加密”,這種程式設計師,見一個就應該開
除一個,因為他編的程式所創造的價值,遠遠小於需要在上面進行維護的價值。

程式設計師應該有程式設計師的修養,那怕再累,再沒時 間,也要對自己的程式負責。我寧可要那
種動作慢,技術一般,但有良好的寫程式風格的程式設計師,也不要那種技術強、動作快的“
搞破壞”的程式設計師。有句話叫“字如其人”,我想從程式上也能看出一個程式設計師的優劣。
因為,程式是程式設計師的作品,作品的好壞直截關係到程式設計師的聲譽和素質。而“修養”好
的程式設計師一定能做出好的程式和軟體。