日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

风雨20年:我所积累的20条编程经验 (转)

發(fā)布時(shí)間:2023/12/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 风雨20年:我所积累的20条编程经验 (转) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
風(fēng)雨20年:我所積累的20條編程經(jīng)驗(yàn) (轉(zhuǎn))

  編者按:原文作者喬納森·丹尼可(Jonathan Danylko)是一位自由職業(yè)的web架構(gòu)師和程序員,編程經(jīng)驗(yàn)已超過20年,涉足領(lǐng)域有電子商務(wù)、生物技術(shù)、房地產(chǎn)、醫(yī)療、保險(xiǎn)和公用事業(yè)。正如喬納 森在文中所言,本文適合剛畢業(yè)的大學(xué)生和剛?cè)腴T的程序員。如果你已是高級開發(fā)人員,或許你在本文中看到自己的身影。



  從11歲時(shí),我就一直在編程,并且一直都很喜歡技術(shù)和編程。這些年來,我積累了一些艱難又容易的經(jīng)驗(yàn)。作為一名程序員,你或許還沒這些經(jīng)驗(yàn),但我會把它們獻(xiàn)給那些想從中學(xué)到更多的朋友。

  我會持續(xù)更新這些經(jīng)驗(yàn),我可能還會有更多的感想,但就我這20年來看,我想下面這個(gè)列表中基本不需要增添額外的東西了。下面就是我至今最難忘的經(jīng)驗(yàn)。

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

  2. 編程語言是一種語言,只是一種語言。 隨著時(shí)光推移,只要你理解了一種語言的原理,你會發(fā)現(xiàn)各種語言之間的相似之處 。你所選擇的語言,你應(yīng)該覺得“舒服”,并且能夠?qū)懗鲇行?#xff08;而且簡潔)的代碼。最重要的,讓語言去適應(yīng)項(xiàng)目,反之亦然。

  3. 不要過于注重程序的“設(shè)計(jì)模式”。 有時(shí)候,寫一個(gè)簡單的算法,要比引入某種模式更容易。在多數(shù)情況下,程序代碼應(yīng)是簡單易懂,甚至清潔工也能看懂。

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

  5. 承認(rèn)自己并不是最頂尖的程序員 - 知不足。 我常想,我對編程了解已足夠多,但是總有其他人比你優(yōu)秀。正所謂,“一山總比一山高”。所以,向他們看齊吧!

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

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

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

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

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

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

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

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

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

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

  16. 謹(jǐn)防那些無所不知的程序員,不愿分享的程序員,還有經(jīng)驗(yàn)不足的程序員。 當(dāng)你遇到這幾種程序員時(shí),你自己要謙虛。無所不知的程序員,更想當(dāng)一個(gè)英雄而不是團(tuán)隊(duì)成員;保守的程序員則是在編寫著他們獨(dú)享的代碼;而經(jīng)驗(yàn)不足的程序員則會每十分鐘就來問你一下,當(dāng)代碼完成后,代碼已經(jīng)是你的,而不是他們。

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

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

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

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

  編者后話

  對本文深有感觸!雖然本文沒有華麗的辭藻,其中樸實(shí)的道理,其實(shí)并非只適用程序員,同樣可以擴(kuò)展到其他行業(yè)。記得以前練字時(shí),總感覺當(dāng)時(shí)寫得很好,但后來回頭再看時(shí),也會想“這居然是我寫的字!”

  在閱讀本文的朋友,不知你是否也有看到了自己的身影呢?歡迎你在微博或評論中和大家一起分享感觸。


  -------------------------------------------------------------------

  本文出處:伯樂 在線 - 職場 博客
  本文鏈接:http://www.jobbole.com/entry.php/322

  Via:Jonathan Danylko  編譯:伯樂在線 敏捷翻譯 組 - @關(guān)關(guān)

  如需轉(zhuǎn)載,但請注明文章來源和超鏈接等版權(quán)信息,否則視為侵權(quán),謝謝合作!

posted on 2010-11-13 13:14 butterflydog 閱讀(...) 評論(...) 編輯 收藏

轉(zhuǎn)載于:https://www.cnblogs.com/neilwu/archive/2010/11/13/3099892.html

總結(jié)

以上是生活随笔為你收集整理的风雨20年:我所积累的20条编程经验 (转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。