自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

國外大師所積累的20條編程經(jīng)驗

開發(fā)
文章介紹了一名編程超過20年的程序員積累的一些編程經(jīng)驗,本文適合剛畢業(yè)的大學(xué)生和剛?cè)腴T的程序員。如果你已是高級開發(fā)人員,或許你在本文中看到自己的身影。

作者喬納森·丹尼可(Jonathan Danylko)是一位自由職業(yè)的Web架構(gòu)師和程序員,編程經(jīng)驗已超過20年。以下是喬納森在這20年里,積累的一些編程經(jīng)驗,適合剛畢業(yè)的大學(xué)生和剛?cè)腴T的程序員。如果你已是高級開發(fā)人員,或許你在本文中看到自己的身影。

1.估算解決問題所需要的時間

不要怕,承認吧!我曾見過一些程序員為了解決一個特殊問題而坐在顯示器前面8小時。為自己定一個時間限制吧,1小時、30分鐘或甚至15分鐘。如果在這期間你不能解決問題,那就去尋求幫助,或到網(wǎng)上找答案,而不是嘗試去做“超級堆碼員”。

2.編程語言是一種語言,只是一種語言

隨著時光推移,只要你理解了一種語言的原理,你會發(fā)現(xiàn)各種語言之間的相似之處 。你所選擇的語言,你應(yīng)該覺得“舒服”,并且能夠?qū)懗鲇行Вǘ液啙崳┑拇a。最重要的,讓語言去適應(yīng)項目,反之亦然。

3.不要過于注重程序的“設(shè)計模式”

有時候,寫一個簡單的算法,要比引入某種模式更容易。在多數(shù)情況下,程序代碼應(yīng)是簡單易懂,甚至清潔工也能看懂。

4.經(jīng)常備份代碼

在我年輕時,我就有過因硬盤故障而丟了大量代碼的經(jīng)歷,這經(jīng)歷很恐怖的。只要你一次沒有備份,就應(yīng)當像有著嚴格的期限,客戶明天就需要。此時就該源碼/版本控制軟件大顯身手了。

5.承認自己并不是最頂尖的程序員 - 知不足

我常想,我對編程了解已足夠多,但是總有其他人比你優(yōu)秀。正所謂,“一山總比一山高”。所以,向他們看齊吧!

6.學(xué)習(xí)再學(xué)習(xí)

正如第5點所說,我經(jīng)常會在手里拿一本計算機或編程相關(guān)的雜志或書(不信,可以問我的朋友)。誠然,總有很多你不知道的技術(shù),你可以從中學(xué)習(xí)以保持不落后。如果你有一種靈巧的方式來獲取你需要的新技術(shù),那你每天都應(yīng)該堅持學(xué)習(xí)。

7.永恒的變化

你對待技術(shù)/編程知識,就應(yīng)像你對待股票一樣:多樣化。不要在某一特定技 術(shù)上自我感覺良好。如果那種技術(shù)或語言已經(jīng)沒有足夠支持,那你還不如現(xiàn)在就開始更新你的簡歷,并啟動培訓(xùn)新計劃。我能保持前行的主要原則是什么呢?至少了 解兩到三種語言,所以,如果某種語言過時了,你在學(xué)習(xí)新技術(shù)的時候還可以依靠另一種語言。

8.提攜新人

協(xié)助并且培養(yǎng)初級/入門的開發(fā)人員學(xué)習(xí)優(yōu)秀的編程方法和技巧。也許你還不知道,在幫助他們向更高一層前進時,你自己也在向更高一層提升,你會更加自信。

9.簡化算法

代碼如惡魔,在你完成編碼后,應(yīng)回頭并且優(yōu)化它。從長遠來看,這里或那里一些的改進,會讓后來的支持人員更加輕松。

10.編寫文檔

無論是Web服務(wù)的API,還是一個簡單的類,你盡量編寫相應(yīng)文檔。我曾經(jīng)引以為豪的代碼注釋,因過度 注釋而有人指責。給三行代碼加一行注釋,只需要你幾秒時間。如果那是一個比較難以理解的技術(shù),千萬別擔心過多注釋。如果你能很好做好自己的工作,大多數(shù)架 構(gòu)師、后備程序員、支持組都會感激你。

11.測試、測試再測試

我是一名黑盒測試粉絲。當你完成編碼后,你“被認可”的時候就開始了。如果你們公司有QA部門,如果你的代碼中有錯誤,那你得到的評論,會比項目經(jīng)理還多。如果你不徹底測試自己的代碼,那恐怕你開發(fā)的就不只是代碼,可能還會聲名狼藉。

12.慶祝每一次成功

我見過很多程序員在解決編程技術(shù)難題后,會和同伴握手、擊掌或甚至手舞足蹈。每個人在生命中都會碰到“頓悟”。如果一個程序員高興地跑來叫你去看他的非凡代碼,也許你已經(jīng)看過這樣的代碼100遍了,但你也應(yīng)該為了這個家伙而慶祝第101次。

13.經(jīng)常檢查代碼

在公司,你的代碼要經(jīng)常檢查(包括自查和其他同事檢查)。不要把別人的檢查,看成是對代碼風(fēng)格的苛求。應(yīng)該把它們看作是有建設(shè)性的批評。對個人來說,經(jīng)常檢查你的代碼并且自問,“我怎樣才能寫得更好呢?” 這會讓你加速你的成長,讓你成為一個更優(yōu)秀的程序員。

14. 回顧你的代碼

在看到自己以前的代碼時,通常會有兩種方式:“難以至信,這代碼是我寫的”和“難以至信,這代碼是 我寫的”。第一種往往是厭惡的語氣,并在想如何改進它。你也許會驚嘆,舊代碼也能復(fù)活成為一種更好的程序,甚至是一個完整的產(chǎn)品。第二種通常帶著驚奇和成 就感。開發(fā)人員應(yīng)該一到兩個自己完成的項目成果,能讓眾人不禁而立并注目而觀的項目。同樣,基于你優(yōu)越的編程能力,你可以把過去的程序或項目拿出來,把它 們更新為更加優(yōu)秀的產(chǎn)品或想法。

15. 幽默是不可缺的

在我20年的開發(fā)生涯中,我還沒有碰到哪位程序員是沒有幽默感的。實際上,干我們這行,幽默是一項必備品。

16.謹防那些無所不知的程序員,不愿分享的程序員,還有經(jīng)驗不足的程序員

當你遇到這幾種程序員時,你自己要謙虛。無所不知的程序員,更想當一個英雄而不是團隊成員;保守的程序員則是在編寫著他們獨享的代碼;而經(jīng)驗不足的程序員則會每十分鐘就來問你一下,當代碼完成后,代碼已經(jīng)是你的,而不是他們。

17.任何項目都不會那么簡單

朋友、家人和同事曾請求我倉促做一些事情,倉促做一個程序或者網(wǎng)站。對于這樣的事,應(yīng)該 從雙方做計劃,才能做出令兩方都會滿意的東西。如果某人起初只是需要一個使用Microsoft Access的、只有有3個頁面的網(wǎng)站,但來就很可能變成一個有15個頁面的網(wǎng)站,并使用SQL Server,有一個論壇,還有一個定制的CMS(內(nèi)容管理系統(tǒng))。

18.任何時候不要想當然

假如你承接一個簡單的項目,你可能會認為某個部分可以輕松完成。千萬別這樣想!除非你有一個類、組件、或者一段已經(jīng)寫好的代碼,并且在現(xiàn)有的項目已經(jīng)測試通過。不要認為這將是很容易的。

19.沒有已經(jīng)完成的軟件

曾經(jīng)有一位程序員告訴我,沒有軟件是已經(jīng)完成的,它只是“暫時完成了”。這是明智的忠告。如果客戶還在使用你寫的程序,并經(jīng)受了時間的考驗。如果有機會,你仍在更新它,這并不是什么壞事,這讓你不斷地前行。

20.耐心是一種美德

當客戶、朋友或家庭成員用電腦的時候,他們也許會受挫,進而想砸電腦,或氣沖沖地離開。我一直在 告訴他們,“是你掌控電腦,不是電腦掌控你。”對于用作編程的電腦,你要有一定的耐心。一旦程序員知道問題所在后,他們就會站在電腦的角度看問題,并且說 “哦,這就是為什么它是這樣做。”

譯文鏈接:http://www.jobbole.com/entry.php/322

原文鏈接:http://www.dcs-media.com/Archive/20-20-top-20-programming-lessons-ive-learned-in-20-years-FH

【編輯推薦】

  1. 成為完美程序員的10種品質(zhì)
  2. 論:如何成為有思想、能創(chuàng)新的程序員
  3. 程序員變身哈利波特 尋找自己的死亡圣器
  4. 程序員的十個層次 你屬于哪一層?
  5. 是什么成就了一名“高級”程序員?
責任編輯:王曉東 來源: 伯樂在線
相關(guān)推薦

2011-12-26 17:18:25

程序員

2019-06-25 10:02:44

程序員經(jīng)驗編程

2010-11-05 09:16:56

PHP

2013-03-12 10:26:41

PHP編程語言

2009-10-22 10:07:15

找工作經(jīng)驗

2022-03-30 15:30:38

程序員編程技術(shù)

2013-07-12 10:44:54

2015-05-18 14:49:27

2009-02-25 09:06:27

大學(xué)生求職經(jīng)驗

2012-07-19 14:16:51

編程經(jīng)驗

2013-07-11 14:41:16

編程經(jīng)驗

2017-11-17 08:00:03

軟件開發(fā)程序員前輩經(jīng)驗

2020-08-09 17:25:27

開發(fā)編碼技術(shù)

2015-08-26 10:50:12

資深程序員編程經(jīng)驗

2017-11-09 07:58:07

程序員編程代碼

2019-09-19 10:23:18

編程手機微信

2015-05-20 12:58:43

程序員經(jīng)驗教訓(xùn)

2019-12-09 10:19:39

程序員技能開發(fā)者

2013-12-04 10:22:51

2010-10-11 10:34:30

李開復(fù)
點贊
收藏

51CTO技術(shù)棧公眾號