版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、伍億人才招聘網(wǎng)—人才基地企業(yè)動力群英匯聚在伍億!如何進(jìn)階為職業(yè)程序員如何進(jìn)階為職業(yè)程序員不知不覺已經(jīng)工作三年了,回顧自己三年的程序員生涯,總結(jié)了一些東西,希望對想從事程序員工作的xdjm們有些幫助。如何從編程愛好者進(jìn)階為職業(yè)程序員:一、簡單才是美好的代碼一定是最簡單的,這應(yīng)該是每個職業(yè)程序員心中萬世不變的箴言。一個簡單的“hellowld”,可以有十幾種實現(xiàn),但是職業(yè)程序員絕對不會標(biāo)新立異,他們會選擇最簡單最常用的那種。為什么要寫簡單的
2、程序?一、簡單的程序易于擴展;二、簡單的程序易于維護(hù);三、簡單的程序易于發(fā)現(xiàn)問題……寫簡單程序的理由實在太多了。能用10行實現(xiàn)的,就不要寫100行;能用數(shù)組實現(xiàn)的,就不要用avl樹…..總之,在能實現(xiàn)功能的情況下,程序越簡單越好。二、嚴(yán)格遵守編程規(guī)范程序員入職時,都會得到一本公司的編程規(guī)范。雖然每個公司的編程規(guī)范不盡相同,但是基本都講的是排版格式、注釋、命名規(guī)范、可測試性、語法規(guī)范等方面的內(nèi)容。編程規(guī)范是前人總結(jié)出來的經(jīng)驗教訓(xùn),每個職業(yè)
3、程序員都應(yīng)該嚴(yán)格遵守。在項目層面上來說,編程規(guī)范是項目成員應(yīng)該遵守的約定,這樣項目代碼才會風(fēng)格統(tǒng)一,盡力約束個人風(fēng)格,避免出現(xiàn)10個人的項目出現(xiàn)11種風(fēng)格的情況。嚴(yán)格遵守編程規(guī)范,還可以避免出現(xiàn)一些低級錯誤。如:編程規(guī)范中有一條,條件判斷式使用雙等號”==”時,應(yīng)該將常量放在雙等號左側(cè),變量放在右側(cè)。遵守該條規(guī)范可以避免出現(xiàn)所謂的“差一錯誤”,即將雙等號寫成等號。這種情況下,編譯器會報錯。職業(yè)程序員寫出來的代碼應(yīng)該是風(fēng)格一致的,這樣的代
4、碼便于維護(hù),便于其他程序員的閱讀,也可以規(guī)避一些低級錯誤,所以,嚴(yán)格遵守編程規(guī)范是程序員職業(yè)化的重要體現(xiàn)。三、代碼的質(zhì)量屬性代碼的質(zhì)量屬性主要有三個方面:功能、可擴展性、性能。功能:是對一段程序最基本的要求。程序首先要正確實現(xiàn)預(yù)期的功能,才能談其他的質(zhì)量屬性??蓴U展性:對于一個大型地,需要長期維護(hù)的軟件來說,程序會不停地加入一些新的特性。如果程序的可擴展性差,就會導(dǎo)致系統(tǒng)的頻繁重構(gòu),浪費大量的人力物力??蓴U展性應(yīng)該是在程序的設(shè)計階段就考
5、慮到。當(dāng)然,沒有誰能在設(shè)計之初就考慮到所有的擴展性,但是我們必須盡量考慮周全,這就涉及到設(shè)計的方法和理論了,這里不討論。性能:好的程序應(yīng)該考慮性能。但是,這因應(yīng)用場景而論。比如:一個簡單的計算器程序,我們沒必要花太多地精力去提高它的性能。但是,對于一個大型的平臺系統(tǒng)(電信軟件、操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)等),我們就得花精力去考慮性能問題了。三個質(zhì)量屬性的優(yōu)先級應(yīng)該是:功能正確擴展性好性能高。通常,某些質(zhì)量屬性之間本身是矛盾的。有時候,我們顧得
6、了性能,程序的可擴展性就會變差。反之,可擴展性好了,但是就會影響性能。一般情況下,我們會按照上面的優(yōu)先級別來取得質(zhì)量屬性的平衡。四、經(jīng)常review你的代碼伍億人才招聘網(wǎng)—人才基地企業(yè)動力群英匯聚在伍億!程序員都是心高氣傲的,他們往往對自己寫的代碼充滿了自信,以至于寫好以后再也不愿意去多看一眼。但是,既是是大牛,也不能保證代碼零缺陷。一個職業(yè)的程序員,應(yīng)該定期review自己的代碼,不斷發(fā)現(xiàn)自己代碼的bug。五、職業(yè)程序員一定是優(yōu)秀的測
7、試人員我在公司幾年以來,親眼看見公司開發(fā)和測試人員之間關(guān)系的幾次變革。剛?cè)牍緯r,發(fā)現(xiàn)問題的數(shù)量是考核測試人員績效的唯一標(biāo)準(zhǔn),某些部門甚至出現(xiàn)給測試人員下達(dá)日發(fā)現(xiàn)問題數(shù)量的指標(biāo),不達(dá)標(biāo)直接影響年終獎。測試人員和開發(fā)人員水火不容,經(jīng)常出現(xiàn)為了一個問題是否該提單爭得面紅耳赤。一年以后,情況有所改變,測試人員不再唯問題單是從。到了現(xiàn)在,公司已經(jīng)大力提倡開發(fā)測試融合了。開發(fā)和測試人員聯(lián)合績效考核,考核的標(biāo)準(zhǔn)是版本的穩(wěn)定性以及遺留缺陷密度。開發(fā)和
8、測試人員辦公區(qū)已經(jīng)完全融合在一起,測試人員經(jīng)常給開發(fā)人員培訓(xùn)測試方法,開發(fā)人員也主動投入到測試發(fā)現(xiàn)問題。我說自身的經(jīng)歷,只是想說明一個事實,開發(fā)和測試之間并沒有不可逾越的差別。很多開發(fā)人員對測試不屑,覺得那是沒有技術(shù)含量的活。其實不然,測試人員是站在客戶的角度考慮問題,他們往往能考慮到很多研發(fā)人員考慮不到的場景。測試有一套非常完善的理論。如果研發(fā)人員能夠了解一些測試方法和理論,對于軟件的設(shè)計會有很大幫助。職業(yè)程序員一定是優(yōu)秀的測試人員。
9、六、站在設(shè)計的高度編碼站在設(shè)計的高度編碼,這話說得有點抽象了,但是這確實是我多年來感受最深的一點。軟件開發(fā)通常分為三個階段:設(shè)計、編碼、測試。很多人認(rèn)為設(shè)計是設(shè)計師架構(gòu)師的事情、測試是測試人員的事情,程序員的工作即是編碼。所以,很多致力于成為職業(yè)程序員的同學(xué)都將全部的精力放在了編程語言的學(xué)習(xí)上。編程語言只是一個工具,學(xué)得好,只能說明你學(xué)會使用了一門工具而已。舉個不是很恰當(dāng)?shù)睦樱瑢τ谝粋€畫家來說,光學(xué)會使用畫筆是不夠的,還得要有藝術(shù)靈感
10、。學(xué)會了編碼只能說明你會使用畫筆了,但是離畫家還遠(yuǎn)著呢。有篇很著名的論文叫做《源碼既是設(shè)計》,我非常認(rèn)同。架構(gòu)師在設(shè)計階段會輸出設(shè)計文檔,但是對于軟件來說源碼才是最直接的工程文檔,一份好的源碼勝過千百篇工程文檔這也是敏捷開發(fā)的思想。好的源碼一定是經(jīng)過設(shè)計的,架構(gòu)師站在架構(gòu)的角度設(shè)計,但是他很難考慮到代碼級別的事情,代碼的實現(xiàn)最終要靠編程人員。大到一個流程,小至一個函數(shù),這些是要靠實際編程人員來設(shè)計的。編程人員也應(yīng)該學(xué)會設(shè)計,懂得一些設(shè)計
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 如何成為程序員
- 程序員如何保持優(yōu)秀
- 程序員職業(yè)規(guī)劃
- 如何識別真正的程序員
- 如何成為優(yōu)秀的程序員
- 數(shù)控程序員國家職業(yè)標(biāo)準(zhǔn)
- 程序員職業(yè)規(guī)劃哲理思想
- 程序員個人職業(yè)規(guī)劃范文
- 數(shù)控程序員國家職業(yè)標(biāo)準(zhǔn)
- 如何做好一名程序員
- 國外程序員推薦每個程序員都應(yīng)讀的書
- 入門篇如何成為游戲程序員
- 程序員歷程
- 程序員必看
- 程序員隨想
- 程序員晉升
- 程序員合同
- 論程序員應(yīng)具備的職業(yè)素質(zhì)
- 程序員創(chuàng)業(yè)
- 程序員 面試
評論
0/150
提交評論