五個好習慣讓你成為優秀程式設計師?

1. 掌握多種語言。程式語言總是有其最適合的領域。當你面對需要解決的問題時,你需要找到一個最適合的語言來解決這些問題。比如,如果你需要效能,可能C/C++是首選,如果你需要跨平臺,可能Java是首選,如果你要寫一個Web上的開發程式,那麼PHP,ASP,Ajax,JSP可能會是你的選擇,如果你要處理一些文字並和別的應用互動,可能Perl, Python會是最好的。所以,花一些時間去探索一下其它你並熟悉的程式語言,能讓你的眼界變寬,因為你被武裝得更好,你思考問題也就更為全面,這對於自己和專案都會有好的幫助。

2. 理性面對不同的作業系統或技術。程式設計師們總是有自己心目中無可比擬的技術和作業系統,有的人喜歡Ubuntu,有的人喜歡Debian,還有的人喜歡Windows,以及FreeBSD,MacOSX或Solaris等等。只有一部分優秀的程式設計師明白不同作業系統的優勢和長處和短處,這樣,在系統選型的時候,才能做到真正的客觀和公正,而不會讓情緒影響到自己。同樣,語言也是一樣,有太多的程式設計師總是喜歡糾纏於語言的對比,如:Java和Perl。哪個剛剛出道的程式設計師沒有爭論去類似的話題呢?比如VC++和Delphi等等。爭論這些東西只能表明自己的膚淺和浮燥。優秀的程式並不會執著於這些,而是能夠理性的分析和理心地面對,從而才能客觀地做出正確的選擇。

3. 把你的工作變成文件。 這一條目當然包括了在程式碼中寫註釋,但那還僅僅不夠,你還需要做得更多。有良好的註釋風格的程式碼是一個文件的基礎,他能夠讓你和你的團隊容易的明白你的意圖和想法。寫下文件,並不僅僅是怕我們忘了當時的想法,而且還是一種團隊的離線交流的方法,更是一種知識傳遞的方法。記錄下你所知道的一切會是一個好的習慣。因為,我相信你不希望別人總是在你最忙的時候來打斷你問問題,或是你在休假的時候接到公司的電話來詢問你問題。而你自己如果老是守著自己的東西,其結果只可能是讓你自己長時間地深陷在這塊東西內,而你就更本不可以去做更多的事情。包括向上的晉升。你可能以為“教會徒弟能餓死師父”,但我告訴你,你的保守會讓你失去更多更好的東西,請你相信我,我絕不是在這裡聳人聽聞。

4. 注意備份和安全。 可能你覺得這是一個“廢話”,你已明白了備份的重要性。但是,我還是要在這裡提出,丟失東西是我們人生中的一部份,你總是會丟東西,這點你永遠無法避免。比如:你的膝上型電腦被人偷了,你的硬碟損壞了,你的電腦中病毒了,你的系統被人入侵了,甚至整個大樓被燒了,等等,等等。所以,做好備份工作是非常非常重要的事情,硬碟是不可信的,所以定期的燒錄光碟或是磁帶可能會是一個好的方法,網路也是不可信的,所以小心病毒和黑客,不但使用軟體方面的安全策略,你更需要一個健全的管理制度。此外,儘量的讓你的資料放在不同的地方,並做好定期(每日,每週,每月)的備份策略。

5. 設計要足夠靈活。 可能你的需求只會要求你實現一個死的東西,但是,你作為一個優秀的程式,你應該隨時在思考這個死的東西是否可以有靈活的一面,比如把一些引數變成可以配置的,把一些公用的東西形成你的函式庫以便以後重用,是否提供外掛方面的功能?你的模組是否要以像積木一樣隨意組合?如果要有修改的話,你的設計是否能夠馬上應付?當然,靈活的設計可能並不是要你去重新發明輪子,你應該儘可能是使用標準化的東西。所謂靈話的設計就是要讓讓考慮更多需求之外的東西,把需求中這一類的問題都考慮到,而不是隻處理需求中所說的那一特定的東西。比如說,需要需要的螢幕解析度是800×600,那麼你的設計能否靈活於其他的解析度?程式設計總是需要我們去處理不同的環境,以及未來的趨勢。我們需要用動態的眼光去思考問題,而不是刻舟求劍。也許有一天,你今天寫的程式就要移植到別的環境中去,那個時候你就能真正明白什麼是靈活的設計了。

6. 是一個優秀的團隊成員。 除非你喜歡獨奏,除非你是孤膽英雄。但我想告訴你,今天,可能沒有一個成熟的軟體是你一個人能做的到的,你可能是你團隊中最牛的大拿,但這並不意味著你就是好的團隊成員。你的能力只有放到一個團隊中才能施展開來。你在和你的團隊成員交流中有禮貌嗎?你是否經常和他們溝通,並且大家都喜歡和你在一起討論問題?想一想一個足球隊吧,你是這個隊中好的成員嗎?當別人看到你在場上的跑動,當別人看到你的傳球和接球和搶斷,能受到鼓舞嗎?

相關問題答案