素質要求
需求理解能力
程序員要能正確理解任務單中描述的需求。在這里要明確一點,程序員不僅僅要注意到軟件的功能需求,
還應注意軟件的性能需求,要能正確評估自己的模塊對整個項目中的影響及潛在的威脅,
如果有著兩到三年項目經驗的熟練程序員對這一點沒有體會的話,只能說明他或許是認真工作過,但是沒有用心工作。
模塊化思維能力
作為一個優(yōu)秀的程序員,他的思想不能在局限當前的工作任務里面,要想想看自己寫的模塊是否可以脫離當前系統(tǒng)存在,
通過簡單的封裝在其他系統(tǒng)中或其他模塊中直接使用。這樣做可以使代碼能重復利用,減少重復的勞動,也能是系統(tǒng)結構越趨合理。模塊化思維能力的提高是一個程序員的技術水平提高的一項重要指標。
團隊精神和協(xié)作能力
團隊精神和協(xié)作能力是作為一個程序員應具備的基本的素質。軟件工程已經提了將近三十年了,當今的軟件開發(fā)已經不是編程了,而是工程。獨行俠可以寫一些程序也能賺錢發(fā)財,但是進入研發(fā)團隊,從事商業(yè)化和產品化的開發(fā)任務,就必須具備這種素質。可以毫不夸張的說這種素質是一個程序員乃至一個團隊的安身立命之本。
文檔習慣
文檔是一個軟件系統(tǒng)的生命力。一個公司的產品再好、技術含量再高,如果沒有缺乏文檔,知識就沒有繼承,
公司還是一個來料加工的軟件作坊。作為代碼程序員,必須將30%的工作時間寫用于技術文檔。沒有文檔的程序員勢必會被淘汰。
規(guī)范化的代碼編寫習慣
知名軟件公司的代碼的變量命名、注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規(guī)定,
良好的編寫習慣,不但有助于代碼的移植和糾錯,也有助于不同技術人員之間的協(xié)作。
測試習慣
測試是軟件工程質量保證的重要環(huán)節(jié),但是測試不僅僅是測試工程師的工作,而是每個程序員的一種基本職責。
程序員要認識測試不僅是正常的程序調試,而要是要進行有目的有針對性的異常調用測試,這一點要結合需求理解能力。
學習和總結的能力
程序員是很容易被淘汰的職業(yè),所以要善于學習總結。許多程序員喜歡盲目追求一些編碼的小技巧,這樣的技術人員無論學了多少語言,代碼寫起來多熟練,只能說他是一名熟練的代碼民工,他永遠都不會有質的提高。
一個善于學習的程序員會經??偨Y自己的技術水平,對自己的技術層面要有良好的定位,這樣才能有目的地提高自己。
這樣才能逐步提高,從程序員升級為軟件設計師、系統(tǒng)分析員。