天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

好的程序員到底好在哪里?

  英文原文:What Makes a Good Programmer Good?

  我這些年和許多程序員工作過——他們有些人超級棒,有些明顯比較平常。因為我近來和一些熟練的程序員工作的很愉快,我花了一些時間考慮我羨慕他們什么。是什么讓一個好的程序員那么好,差的程序員那么差?或者,簡短一些,是什么讓一個好的程序員那么好呢?

  根據我的經驗,成為一個優秀的程序員與年齡、教育或者你掙錢的多少沒有關系。關鍵在于你的表現,更深刻的說,是你如何思考。我注意到我羨慕的程序員有一致的習慣,比起他們所選語言的知識、對數據結構和算法的深入理解、或者幾年的工作經驗——更多的是他們交流的方式,管理自己的方式,和根據他們精湛的技巧可以知道他們接觸編程的方法很有意義。

  當然,成為一個好的程序員需要的比任何人可以列舉的都還要多,我不會基于這些實踐的存在(或者缺失)而單獨評判任何程序員。但當我看到時我確實能明確的知道,當我看到一個具有這些性格的程序員時,我會想,“這個人真的知道他們在做什么。”

  他們做研究

  或者稱作“三思而后行”,或者稱作“谷歌一下”。

  無論你怎么稱呼它,你可能遇到的大多數編程問題幾乎在一定形式上都已經被解決了。傳道書早就記錄在案,陽光底下無新事。在GitHub上的庫文件列表中,在因特網上的博客中,或者恰好與某個人經驗交流中,好的程序員知道要在解決一個問題之前先做研究。

  我曾經見過偉大的程序員急于給出解決方案,但是我曾經一起工作過的最糟糕的程序員,從來不咨詢他人,從而導致做了大量的重復性工作或者恰好使用了錯誤方式來解決問題。于是很不幸的,他們最終為他們的錯誤付出代價。

  讀錯誤信息(并以之行事)

  這包括對堆棧追蹤的符號解析。是的,令人厭惡而且不幸——但如果你不愿意這么做,怎么知道哪里出錯了?我知道的最高效的程序員不害怕深入挖掘問題。最低效的程序員看到錯誤甚至都不愿讀錯誤信息。(這聽起來挺可笑的,但我遇到的頻率會讓你吃驚。)

  更進一步說,偉大的程序員看到問題,會急迫的去解決它。對于他們來說,讀錯誤信息僅僅是第一步;他們渴望深入問題并找出錯誤的根源。他們對推卸責任沒有興趣,他們對找到解決方案有興趣。問題確實在他們這里止步。

  他們會去看源代碼

  文檔,測試和人:這些都可能會說謊。未必是故意撒謊,但是如果你想確切的知道代碼是怎么工作的,你就必須親自察看源代碼。

  即使這不是你非常熟悉的語言也不要害怕——比如,如果你主要是一個Ruby程序員并且你懷疑Ruby的C語言包里有錯誤,那就去解壓它看看再說。不錯,你可能會一無所獲。但是誰知道呢,你也可能會找到問題所在,比起什么都不做,你至少選擇了一條更有機會的路。

  如果你工作在一個非開源的環境中,就不太好辦了,這很不幸,不過道理是不變的。糟糕的程序員對查看源碼通常沒有太多興趣,結果就是,跟那些愿意去研究一下源碼的人相比,他們通常會被這些問題困擾的更久。

  他們說做就做

  好的程序員總是趨向于采取行動。他們似乎有種控制不住的強迫性——一旦他們確認了一個問題或者看到了一個新的特性需求,就會立即著手解決,有時甚至過早或者過于勇往直前。他們遇到問題的直覺反應就是正面解決它。

  有時這會帶來麻煩——但是他們的熱情正是他們能夠做的很好的關鍵因素。當某些人還在拖延回避或者幻想問題能自己消失的時候,好的程序員已經開始動手了。

  更簡單的來說(也許,太過直白),如果你看到一個人興奮的發現并處理問題,很有可能你得到了一名好程序員。

  他們防患未然

  這可能是一個壞的程序員的特征——他們總是糾纏于一個又一個的人為失誤,從來都是沒有明白上一個就轉向下一個。他們總是在抱怨他們程序中的錯誤部分,卻耗費數小時對完美運行的代碼來debug。他們讓情緒占據主動,相信直覺而不是仔細明確的分析。

  如果你突然遇到一個問題——或者每一個問題看起來都像是世界末日一般,你極有可能是在犯錯誤而不是在解決潛在的問題。偉大的程序員會花費一些時間來了解是什么出了錯,哪怕是真的是一場災難,除了這些,他們還會把常出現的問題當成分配任務來處理掉。由于他們能更精確的解決大部分問題,從而不會提高你的團隊的緊張程度。

  他們善于交流

  說到底,編程也是一種交流的方式。能夠簡潔明了地表達出你的觀點之于寫代碼就如其之于寫詩一樣重要——長久以來,我發現那些能夠寫出精煉的電子郵件、優雅的報告或者僅僅是高效的備忘錄的人通常也會是更優秀的程序員。

  這個發現對寫程序和對英語一樣使用。當然,把充斥著括號和只用一個字母命名的函數寫在一行里面也是可以的,但是如果沒有人能夠理解你寫的代碼,又有什么意義呢?無論使用什么媒介,優秀的程序員會把時間花在如何將他們的觀點更好地表達出來上面。

  他們激情四射

  我想這是最能夠體現一個好的程序員的地方(并且,不僅在計算機行業,這點適用于任何行業)。

  如果你真正關心你做的東西——不只是把它當做一個工作去應付,而是一個興趣、一件對你有著莫大魅力的事情,那么在這個行業里,相較于其他人而言,你就擁有了一項巨大的優勢。好的程序員會一直保持著寫代碼的狀態,他們每天花在這個行業里的時間都不低于8個小時——包括工作和空余時間。在編寫項目和授業解惑兩者之間,他們不會偏向任何一方。他們不會只是為了搞清楚某個東西的工作原理而整天癡迷于新技術或新的編程語言。

  當我觀察一個周日正在做自己感興趣的項目、在創造自己需要的工具、被新的、有趣的事物吸引的程序員的時候,我意識到我正在觀察一個會令所有人都不由自主心生敬意的人。最后,偉大的程序員不會將他們的專業看做賺錢的工具,而是一種改變世界的手段。我想這就是早就一個偉大程序員的真正原因吧。編程,對于他們來說也就意味著創造世界。也只有這樣的人,才值得我們由衷地敬佩和景仰。

it知識庫好的程序員到底好在哪里?,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 再深点灬舒服灬太大了在线视频 | 免费国产黄线在线播放 | 啦啦啦 中文 中国 免费 高清在线 | 网址在线观看你懂我意思吧免费的 | 国产在线精品亚洲另类 | 果冻传媒在线看免费高清 | 亚洲精品久久久一区 | 国产毛A片久久久久久无码 国产毛A片啊久久久久久A | 猪蜜蜜网站在线观看电视剧 | 超污视频带污疼免费视频 | 日本一区不卡在线播放视频免费 | 精品国产乱码久久久久久乱码 | 亚洲AV久久无码精品蜜桃 | 久久精品视频16 | 欧美兽交YOYO| 欧洲精品一区二区不卡观看 | 最新精品国产 | 国产女人喷潮视频免费 | 人妻无码AV中文系列 | 亚洲视频区 | 日韩综合网 | 近亲乱中文字幕 | 国产欧美精品一区二区色综合 | 欧美色图一区二区三区 | 男人天堂2018亚洲男人天堂 | chinesedaddy80老年人 | 亚洲国产欧美日本大妈 | 正在播放一区二区 | 色综合久久88色综合天天提莫 | 亚洲第一国产 | 国产成人综合视频 | 国产成人精品永久免费视频 | 精品国产品在线18年 | 久久婷婷五月综合色丁香 | 高中生被C到爽哭视频免费 高挑人妻无奈张开腿 | 狠狠色狠狠色综合日日91app | 国产精品午夜福利在线观看 | 特黄AAAAAAA片免费视频 | 男人j进女人j一进一出 | 美女屁股软件 | 国产精品高清视亚洲一区二区 |