世間事最難者莫過於人際溝通、思想交流,故有智慧者必善於溝通。
 
« 醜小孩UrMap網路地圖 »

程式≠軟體系統產品

2006-02-22

程式≠軟體系統產品

固定網址 20:10:35, 作者 Ren 電子郵件 , 14 詞彙   Trad. Chinese (TW)
分類: 關懷與感想

  昨天後朋友聊天時,討論到程式設計這個行業的前途。朋友拿了一篇報導,指出目前美國學子對於電腦相關科系與致缺缺,原因在於「…美國學生很清楚,雇主隨時都可以用更少的錢,從外國引進許多優秀的電腦人才…」而台灣也可能因為大陸的競爭,失去這類的就業機會。

  但我覺得每個行業都會有這種問題,賣便當的也有生意好和不好的分別,自己得抓到行業的特質,加強自己的優勢。做事情要會會抓重點,所就是台語所謂的「眉角」,在重點之處加強本身的能力,熟悉領域知識(domain knowledge?domain knowhow),才能建立起這個行業的門檻。
  這件事也讓我想起了程式設計的專業︰軟體工程。前陣子剛看過軟體工程中很重要的一部經典「人月神話」,在第一章中就講到專業與業餘的差別,也把軟體概分為四類︰

  1. 「程式(program),它本身是完整的,寫這個程式的人可以在開發系統上執行它,這就是一般所謂在車庫裡製造出來的東西,也就是個別的程式設計師用以評估生產力的東西。」
  2. 「軟體產品(programming product),這是一個可以讓任何人執行?測試?修改和擴充的程式,並且適用於多種操作環境,以及不同情況的資料。」
  3. 「軟體系統(programming system),這是彼此交互運作的一組程式集合,這些程式之間,有律定共同的資料格式與合作模式,組合起來就是可以完成某項複雜工作的一套完整設施。」
  4. 「軟體系統產品(programming system product),更不同於上述的程式,它的花費要九倍,甚至更多,但卻是真正有用,也是大部分軟體工程企圖要做出來的東西。」

  所以我覺得走程式設計這一途,得學習駭客的精神,找出有趣的問題並試著解決,在過程中自然會培養出別人沒有的能力。把寫程式當作一門藝術,每次「下筆」時都要朝著完美的目標前進。雖然得在理想與現實間取得平衡,但實力會因此慢慢累積,等到有一天就會發現自己比那些只打算「混口飯吃」的人厲害多了。共勉之~

附錄︰

  程 式  —x3→  軟體系統
   |      (介面?系統整合)
   x3          |
   ↓          ↓
  軟體產品 ——→  軟體系統產品
(通用?測試完成?
 文件齊全?可維護)

沒有回應