當前位置:
首頁 > 知識 > 總結身邊優秀程序員擁有的6個特質

總結身邊優秀程序員擁有的6個特質

如果你是一個程序員,你會發現身邊優秀的同事也總是有一些共同點。總結了他身邊優秀程序員擁有的6個特質:具有好奇心、熱愛分享、具有社區意識、以身為程序員而自豪、有點懶、代碼可視化的能力。

代碼可視化

a. 代碼可視化

對於整個代碼庫,需要在腦子裡面構建一個模型。這就是我們所說的「代碼可視化」。

要做到「代碼可視化」,首先我們需要了解整個代碼庫。需要對部分代碼進行修改或增刪時,需要知道在什麼地方進行查找。問題出現在什麼地方,應用程序中的對象/常式是怎麼進行的,每個模塊之間的關係是怎樣的,這些都需要清楚。

其次,需要了解正在工作的代碼環境。大部分情況下,我們會在多個文件中來回切換,優秀程序員會明白自己當前所處的環境,不會覺得暈頭轉向。只要一看代碼框架和結構,就可以快速找到自己需要的源文件。當然,這需要對整個代碼做到瞭然於胸。

想要系統學習Java知識 加入學習群一四四九零一零七六 可以免費學習java還有大量學習乾貨哦

不過,程序猿和程序媛在代碼可視化方面的能力是由有差別的,據目前研究,貌似IDE中的導航功能更對程序猿有利。

b. 具有社區意識

如果在使用某個開源軟體的時候遇到了Bug,你會怎麼辦?一般會有2個反應:

抱怨,尋找另一個替代軟體

下載源碼,自己動手打補丁

上面2個方式都不太明智。開源社區之所以成為社區,就是因為是大家自願地來修復問題,很明顯第一個方式不太合適。那第二個方式為何不妥?我們不鼓勵直接下載源碼來打補丁,應該首先聯繫該軟體的維護者。一個著名的例子就是,Linus Torvalds曾拒絕合并一段可以大幅提升Linux內核速度的代碼,只是因為該段代碼的作者獨自工作了6個月之久。記住,首先與社區一塊討論你的改進,然後大家一起來做!

有句俏皮話是這麼說的:開源項目沒死掉,是因為還沒人來修復你的Bug;因為沒人修復你的Bug,所以這個開源項目死掉了。

c. 熱愛分享

一旦找到解決自己問題的方法,然後就到此為止,然後就沒有然後了?No!一名優秀程序員不能這樣做。在地球上正有一群程序員遭遇和你一樣的問題,他們也正在嘗試解決。

理理自己的思路,寫成博客記錄下來:遇到了哪些坑兒,如何避免這些坑兒。在你曾經搜索過該問題的地方,如果問題還沒有解決,就幫助回答,貼出自己的方案,接受後來者的膜拜。當然,你可能會「自問自答」,這樣就準備接受後來者的鄙視吧。

d. 以身為程序員而自豪

優秀的程序員都以作為程序員而感到自豪。一旦你完成了某項功能,你會迫不及待地將成果展示給客戶、麻利利地實現客戶的想法。

如果發現自己的代碼裡面可能存在問題時,怎麼辦?可能會「自大」,因為是自己寫的,就覺得代碼審核沒有必要;或者有問題也非要自己完成,而不是協作解決。優秀的程序員,應該學會與團隊分享,時刻保持激情,但不僅僅是為了自己,而是為了團隊、產品和項目。

e. 嗯…有點懶

幾乎全部職業的優秀員工都很勤奮、工作努力,不過程序員例外,那些優秀出色的程序員都有點懶。這可能是唯一把懶惰當做優秀品質來對待的職業(測試人員可以除外)。

也許可以說明這一優秀特質的最知名的例子就是「計算機第一夫人」Grace Hopper在1952年發明了編譯器。她解釋說,做出編譯器就是因為自己很懶,並且希望程序員都能夠成為一個數學家。

如果一個程序員被要求定期完成某事,他/她會堅持想出一個辦法來避免這樣做。「一次編寫,到處運行。」如果客戶總是談論令人厭煩的重複性的工作,優秀的程序員總會嘗試著將這個工作自動化。

比爾蓋茨也講到「我總是會選擇一個懶人去完成一份困難的工作。因為,他會找到捷徑」。

程序員們,擁抱「懶惰」吧,將重複性的工作自動化,不要重複自己!提示:懶人們應該快速學會快捷鍵喲~這也是優秀程序員應該做的!!

f. 具有好奇心

他們總是保持一顆好奇心,凡是遇到問題,首先就是:Google!沒有Google就沒有發言權。然後,會在StackOverflow上查找相關問題、瀏覽郵件列表、閱讀在線文檔等等。

這聽起來理所當然,但是部分人卻是先問自己身邊的同事。原作者認為,這個習慣不太好:Google檢索到的信息遠比你周圍同事了解的多,沒必要放著這麼好的資源不用,在你緊張工作的同事身上費功夫。

當然,大多數時候第一次在Google搜索問題,可能沒有自己想要的結果,不過不要放棄!繼續搜索,嘗試使用不同的關鍵詞,或者直接閱讀源碼。如果上面都沒有結果,那就在郵件列表、新聞組等社區提問。

想要系統學習Java知識 加入學習群一四四九零一零七六 可以免費學習java還有大量學習乾貨哦


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT技術java交流 的精彩文章:

Java 不被看好前景堪憂?可能是想多了!
Java 對象鎖和類鎖全面解析
前端工程師必看的10個HTML5動畫工具!
歡樂頌五美的衛浴間,哪個入你眼?
C語言必背18個經典程序

TAG:IT技術java交流 |

您可能感興趣

一個程序員開始優秀的 3 種跡象
這8個方法讓你成為最優秀的程序員
優秀的程序員和一般的程序員差別在哪?
一個優秀的程序員是如何煉成的
一個優秀的程序員,需要練就什麼樣的技能
一個優秀的程序員是如何煉成的?
程序員的18個有趣的事實
有一個程序員男朋友是什麼樣的體驗?
提升程序員工作效率的6個工具利器
一個程序員的「養生」桌面
如何才能成為優秀的程序員?這10個準則值得深思
一個從程序員變身C4D高手的三維設計師
優秀的程序員是不用機械鍵盤的
全球最厲害的14位程序員!
周末特供,程序員提升的8個利器!
頂級程序員和普通程序員在思維模式上的5個區別!
程序員如何才配擁有姓名?
孤獨的程序員
程序員的工作台,布置成這個樣子效率才高
一周開發 6 個版本,小程序多端框架深入測評 | 程序員硬核評測