2007-12-30

程式寫作雜想

現代的程式設計師,從某個角度來看,或許是幸運的,因為有著太多的程式語言可選,諸如 c、c++、basic、perl、python、php .. 等。

這倒底是好是壞呢?有著太多的選擇在某個程度上並不意謂著好事,就如一般 linux 社群,有著太多的版本,反而造成推廣上的最大阻礙。

初入程式設計的花花世界時,很貪心的,想多學幾種語言,結果是每種都會,但都不精,變成一個半調子的程式設計師。

自小到大,說真格的,我還沒看過所謂的天才,只有見過下過苦功,練就一身本事的程式設計師。畢竟人生時間有限,想想吧,你學一種語言要多久時間呢?我想從生手到入門,每天以 8小時計,至少要半個月到一個月的時間,這只是入門哦,要達到收放自如,天馬行空,或說超凡入勝的境界吧,沒有兩三年的磨練,是很難登堂入室,運用自如的。

於是乎,想想,自己有多少時間浪費在這個節點上,值得深思!

每種程式語言,都強調其易學易用。其實在每個語言中,都是由一些共同的元素組成,像是變數、判斷、迴圈、函數、程式庫、模組及物件等。基本上只要了解這些在各個語言上的差異,就可初步掌握這個語言的精髓了。

但這又如何?程式語言是死的,其中種種都是訂的死死的,而設計本身是活的,它必需依靠設計對象而定,例如寫個會計軟體和進銷存軟體,就是不同的,你不是要去了解你所使用的程式語言,這並不重點,而是會計或是進銷存中的種種規定。

所以,對使用何種程式語言,我一直有種感覺,一個好的的程式語言就是:

1. 能寫出你所想要的程式語言就是王道,就是最好的程式語言

2. 一種程式語言的學習曲線要短,畢竟程式語言只是個工具、只是個界面,所想要完成的軟體才是重點,這也是說,不要浪費太多學習時間在這個語言上,而是將重點放在軟體及規劃上,我想使用者關心的是這個軟體好不好用,功能夠不夠,是否切合所需,而不是用那個語言寫的。

因此,對於一些聲稱精通好幾種程式語言的設計師對我來說,我總是持著保留態度,而覺得樣樣通,而通通不精。

所以有限的人生時間內,選一個好的程式語言是重要的。而程式語言就目前發展來說,我以為還沒有所謂萬能的程式語言,可能在某個地方,它很好用,但在另處,寫起來可捉襟見肘,而用另種語言可能就比較方便。

不過這問題,在一個好的程式設計師上,並不是問題,只要它精通這個語言,都會有解決的方式,或許不是那麼 easy,但目的總是會達到了。

所以慎選一個 match 你的程式語言,是想踏入這個領域中最重要的事,但如前所言,這有著太多的選擇,不妨花些時間來測試;聽聽別人的意見,或許也是種方式,但僅供參考,畢竟別人不是自己,其經驗也不適合直接套用。

在決定使用何種程式語言後,就好好的和它 "談戀愛" 吧,多多了解它、使用它,在各種狀況下練習和它之間的密合程度,久而久之,自然應用自如,對於各種程式設計上的問題,自能迎刃而解。

在此 "談戀愛" 階段,最怕三心二意,只要能堅持下去,對該語言的了解就能超乎別人,自然就成為這方面的專家了。這也是一句很流行的話"愛你所選擇的,選擇你所愛的"。

拉雜說了許多,並非上了年紀,喜歡碎碎唸。只是個人花了許多冤枉路得來的經驗;在繞了許多路終又回到原點的感想,希望對程式設計有興趣的人有些助益。則幸甚!

沒有留言 :

張貼留言