熱點(diǎn)推薦:成功程序員的8個(gè)習(xí)慣
對(duì)成功的渴望或許是我們與生俱來寫在基因里的一部分。成功會(huì)讓人幸福,并且?guī)缀趺總€(gè)人都在爭(zhēng)取幸福。當(dāng)我們感到幸福的時(shí)候,我們大腦中的化學(xué)物質(zhì)會(huì)迸發(fā)積極的情感,激勵(lì)我們獲取更多的成功。
成功的職業(yè)生涯通常是指規(guī)定時(shí)間內(nèi),發(fā)布高質(zhì)量且被認(rèn)可的工作。這對(duì)于IT開發(fā)人員也沒什么不同。成功的開發(fā)人員能在預(yù)估范圍內(nèi)編寫出高質(zhì)量的代碼,并通過發(fā)布偉大的產(chǎn)品讓利益相關(guān)者滿意。
那么開發(fā)人員如何才能做到這一點(diǎn)呢?有些人認(rèn)為開發(fā)人員是魔術(shù)師,按幾個(gè)按鈕就能讓計(jì)算機(jī)變魔法?,F(xiàn)實(shí)情況則要復(fù)雜得多:我們得遵循一定的原則來編寫可靠的代碼,測(cè)試我們的工作,并不斷更新到***的技術(shù)。
那么,開發(fā)人員想要成功的話,需要做些什么呢?
1.測(cè)試,測(cè)試,還是測(cè)試
寫代碼的一個(gè)重要方面就是,測(cè)試。項(xiàng)目中的bug發(fā)現(xiàn)得越早,修復(fù)成本就越低。你在項(xiàng)目的***階段找到的bug,修復(fù)起來絕對(duì)相比你在寫代碼的時(shí)候修復(fù)要昂貴得多。自動(dòng)單元測(cè)試有時(shí)在軟件項(xiàng)目中會(huì)被忽略,但我可以告訴你自動(dòng)單元測(cè)試有助于盡早發(fā)現(xiàn)bug。
2.原型和線框圖
在動(dòng)手寫代碼之前,你得想清楚你究竟要開發(fā)什么東西。好的原型和線框圖將幫助利益相關(guān)者和開發(fā)人員確定最終產(chǎn)品應(yīng)有的樣子。越早討論功能和可能的障礙越好。
Indigo Studio是一個(gè)能幫助我們迅速起草原型的超棒工具:平臺(tái)不但不需要設(shè)計(jì)人員寫一行代碼,而且允許用戶和利益相關(guān)者在應(yīng)用程序構(gòu)建之前先行體驗(yàn)它的簡(jiǎn)化版本。
3.使用在線社區(qū)和論壇
俗話說,共享的問題就是減半的問題。當(dāng)你絞盡腦汁解決問題的時(shí)候,請(qǐng)注意不要浪費(fèi)太多時(shí)間在孤軍奮戰(zhàn)上。很有可能你的問題,其他某個(gè)人已經(jīng)經(jīng)歷過了,他的經(jīng)驗(yàn)教訓(xùn)會(huì)對(duì)你產(chǎn)生極大的幫助。訪問在線社區(qū),例如Stackoverflow或TechNet尋求提示和技巧。
4.充分利用工具和實(shí)用程序
有大量的軟件可用于幫助提升開發(fā)人員的構(gòu)建速度。 除了visual Studio——這款開發(fā)微軟軟件的必備工具現(xiàn)在已經(jīng)是開箱即用的了——還有很多其他的工具和第三方插件可幫助開發(fā)人員做的更好:
-
ReSharper使得編寫代碼更容易;
-
Web Essentials在創(chuàng)建web app時(shí)可提供方便的功能;
-
SPCAF(用于SharePoint / Office 365的開發(fā))。
5.有明確的前景規(guī)劃和最終目標(biāo)
一個(gè)偉大的app和產(chǎn)品始于一個(gè)點(diǎn)子,并且這個(gè)點(diǎn)子成為了最終的目標(biāo)。如果沒有最終目標(biāo)就沒有清晰的情景規(guī)劃,這很有可能會(huì)導(dǎo)致預(yù)期和最終產(chǎn)品之間出現(xiàn)差異。在開發(fā)過程中略微改變最終目標(biāo)是沒有關(guān)系的:但始終要對(duì)最終結(jié)果將是什么樣子胸有成竹。
6.不要急于開發(fā)
大多數(shù)bug都是在急急忙忙開發(fā)時(shí)而引進(jìn)的。每一個(gè)項(xiàng)目在某個(gè)階段都會(huì)有時(shí)間壓力,但成功的開發(fā)者得能夠應(yīng)對(duì)這種壓力,并保持提供高質(zhì)量的軟件。
俗話說,忙中出錯(cuò)。匆匆忙忙趕出來的東西總會(huì)有瑕疵。而且,引進(jìn)的bug實(shí)際上反而會(huì)導(dǎo)致更長(zhǎng)的開發(fā)時(shí)間,得不償失。
7.學(xué)習(xí),變得更好,懂得更多
IT是一個(gè)進(jìn)步非常迅速的世界。如何編寫代碼、使用哪款插件、哪個(gè)產(chǎn)品可用等等所有這些問題的答案,在一定時(shí)間之后都會(huì)發(fā)生變化。開發(fā)人員需要熬夜 去閱讀***的博客、論壇和社交網(wǎng)絡(luò)。當(dāng)然,閱讀哪些博客取決于你使用何種技術(shù),關(guān)于SharePoint / Office 365的一些必要資源包括官方的General Office Blog和 Office Dev blog。
這不僅僅是位與字節(jié)的問題:閱讀關(guān)于如何變得更優(yōu)秀的書籍,是走在前沿的關(guān)鍵。推薦閱讀Malcolm Gladwell的Outliers來了解更多成功的秘訣。
8.不要害怕失敗
即使開發(fā)人員嚴(yán)格遵照前面的7個(gè)要點(diǎn)去做,問題依然還是會(huì)有。當(dāng)錯(cuò)誤出現(xiàn)時(shí),你千萬(wàn)不能因此而氣餒——沒有人是***的,偶爾出現(xiàn)問題是正常的。
關(guān)鍵是要了解問題的所在,承認(rèn)自己的失敗,并從中吸取經(jīng)驗(yàn)教訓(xùn)。千萬(wàn)不要將自己的錯(cuò)誤歸咎于其他人,而且如果你敢于承擔(dān)責(zé)任的話,大家反而會(huì)欣賞你。
神奇的魔法
上面我們已經(jīng)討論了能夠促進(jìn)開發(fā)人員成功的8個(gè)習(xí)慣和原則。寫的代碼要堅(jiān)實(shí)可靠,功能要經(jīng)過測(cè)試之后再發(fā)布,并且在和利益相關(guān)者、同事和管理人員溝通時(shí),語(yǔ)言要明確,態(tài)度要坦誠(chéng)。
一個(gè)偉大的軟件產(chǎn)品始于一個(gè)偉大的原型,Indigo Studio除了能幫助我們更容易創(chuàng)建原型,還能讓隨后開發(fā)過程中的其余部分變得更容易。但是,成功并不僅僅在于計(jì)算機(jī)!非技術(shù)方面,例如不要害怕失敗以及閱讀好書,也有助于成功。
軟件開發(fā)者與其他人一樣也是人,雖然我們可以用代碼寫出一個(gè)個(gè)神奇的魔法!
譯文鏈接:http://www.codeceo.com/article/8-habits-of-highly-successful-developers.html
英文原文:8 Habits of Highly Successful Developers