> ==>發信人: drkkimo.bbs@ptt.cc (), 信區: programming
> 資工不等於程式設計師吧 現在討論的是程式設計師 他也許也要懂理論 但他的核心能
> 力還是對某類程式語言的應用設巧對吧 不然就該叫會寫程式的研究人員 會寫程式的系
^^^^^^^^^^^^^^^^^^^^^^^^
前面已經有人跟你提到 Knuth, 他有一序列書 "The Art of Programming" ,
Programming 是個很老舊的名稱, "不會寫程式" 意謂著 "無法用電腦解決別人交付的
需求問題".
Program 在沒有數位計算機時就已經出現, 那時代是指"插線板上的線路", 但插線前要
把題目相關的數學式變成微分方程式再劃出電路圖, 最後就是插線組成電路, 這一序列
工作被稱為 programming. 寫程式是有程式語言編譯工具協助以後的台灣用語, 因為這
時代的這一序列工作都要先寫在紙上. Programmer 也是老式用語就是指做這一序列事
的人.
程式語言在 structure programming 時代是用來限制 programmer 不得這樣寫
那樣寫, 使之可讀性變高, 容易維護, 甚至是閹割其程式能力讓 programmer 不得做某
些事. 像使用 4-GL 的 database 那更是只給你一個框框只能在那堆資料做事.
Programming 並沒限定那一種程式語言, 但就是要能解決問題把要的事情做出來. 你
的 relational database SQL 語言再多有技巧就是不能讓語音卡進來的訊號正確切
段取得與存取. 現在的 OO 講究封裝, 訊息傳遞, 但她可不讓 programmer 隨意更改
或中間跳入程式碼內做呼叫, 限制使用方式更多.
程式設計師與系統分析師也都是老式用語, 整套系統包含硬體及各項設備, 一套
飛機訂位系統是全球用的, 如果某些設備與算法沒有現成的可用, 例如語音輸入或志
願優先訂位的設備與算法, 這些沒有的才是研發人員做的, 如果是訂位系統的供應商
還得生產供應這些設備與程式就要她的系統分析師做分析, 研發人員做算法開發, 程
式設計師開發出配合自產設備, 新設備與新算法的程式.
專家系統, 基因演算法自動篩選程式片段, 資料庫系統等就跟飛機訂位系統一樣
都是給操作人員或用戶用的, 這些人多數不會被稱為 "程式設計師".
電腦的指令就只有七大類, 基本指令也就像流程圖那幾種, 以程式解題就是用這
幾種, 所有算法都是建立在這之上, 至於用那些程式語言就看問題的需求, 幾乎多數
的高階語言都無法對付中斷(interrupt)處理, 那又如何用 SQL 絞盡腦汁與技巧來提
供界面與設備的 driver routine ?
多數使用者都不想 "寫程式" , 但問題要能被解出來. AI prolog 推論, 基因法
篩選都是企圖協助使用者不必自己寫程式. 新娘學校的學生也是可以不會做衣服, 只
要會挑衣服穿就好. 所以資工系畢業生不會 "寫程式" 也沒有不好, 但還是要有人會
寫程式, 會做衣服.
> 統分析師 會寫程式的PM.... 如果硬要說"程式設計師"這個角色的核心能力是別的的話
--
◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234