程式設計師應知:你有幾種武器

maqianmaqian發表於2010-08-08

程式設計師應知:你有幾種武器?

首先我們必須有一種最趁手最熟悉的武器,有人的是java,有人是vb,還有人是c#等等,這種武器是用來解決大型專案中的問題的,我們用的最多,對其瞭解最深,也最喜歡使用。但是,僅僅這一種武器是否夠用,是否足以搞定客戶或者業務部門層出不窮的各種需求呢?一般來說還是可以的,只不過在特定的情況下,比方說時間上的要求,使用者介面友好程度上的要求,或者是某些特定功能上得要求,我們可能會採用其他武器,從而得到更高的效率,更便捷的操作,或者特定的某種功能。

作者以自己的經驗為例:

拿我自己曾經的經歷為例吧。之前曾經在博文中講述過一個抽獎軟體的 開發過程,程式碼也一起公佈了出來。其實我日常工作中用的最多的是JAva,開發環境是EClipse。那次的任務如果用這種武器開發也是可以的,但需要的 時間可能會比較長,而當時業務部門才給了我不到一天的時間,所以最終我選擇了VBA這種武器,結果只用了兩個多小時就完成了開發和測試,而且業務人員還挺 滿意,第二天就真的用它抽出了各個獎項。

再舉個例子,我們平日裡將開發好的程式釋出到測試環境需要不少繁瑣的環節,一不小心就會忘記一個,然後就會導致釋出人員的不滿和抱怨,所以,有個小 工具來提醒自己,並且將整個流程自動化是非常必要的,但是這個工具需要可以和Windows互動,並且能夠模擬鍵盤和滑鼠的操作,當然還需要具備程式語言 的特點,另外還有可以很容易地編譯成可執行檔案獨立執行,所以用JAva或是C#都不是非常合適。不過我很幸運,發現了Autoit這個工具,它完全滿足 我的需要,所以我的武器裝備庫裡面有多了一件。花費了兩個多小時,我給自己編寫了非常好用的提醒工具,使用它之後,我近一個月以來都沒有在釋出環節犯過錯誤。

然而,說起來容易做起來難,我們應該怎麼做,又應該注意些什麼呢?

選擇學習一種武器之前,應該明確地瞭解它適用在什麼樣的情況下,做什麼樣的工作最適合。除此之外,古語有話:尺有所短,寸有所長,在特定的情況下,沒有一門語言或者一種工具是完美無缺的,我們還要了解每種武器的長處和短處,這樣不僅有利於採用最合適的武器,而且還可以讓它們彼此之間相互配合,從而達到更好的結果。當初上大學的時候,曾經有段時間在學校的有線中心做視訊編輯,那個時候就是用了多種工具,做圖的有Photoshop、Photoimpact,做視訊的有Premier、我行我速、做3D效果的有3D Max、Cool 3D,總的來說,有些是屬於傻瓜型的,只要動動滑鼠就可以生成差不多的效果,但是對於細節的處理不是很好,想要做微調的時候,就需要使用比較傳統的、笨重的工具,那樣做出來的效果才會有專業水準。所以說,相互配合真的挺重要的。大家在程式設計的過程中也一定擁有多種工具,是不是也是不停地在利用彼此之間的配合來提高自己的工作效率了呢?

還有一點想要說明的就是,儘管我們應該擁有多種武器來處理多種不同的情況,但是對於經驗不太豐富的同學來說,不要太急於追求手中武器的數量,那就有些捨本求末了,有些時候,武器(或者說工具)只是外在的招式,而我們的程式設計思想才是內功,只有先把內功練成了,然後隨便使用哪種工具,都會發揮出巨大的威力,那個時候就是充實你的武器庫的時候了。因此第一步應該是先徹底掌握一門語言,或者一種工具,然後再去觸類旁通。

最後想要問問大家,你有幾種武器?

相關文章