• 7

學習程式語言

看完全部的文章, 我個人覺得最贊同的是 sambad 兄的建議:

sambad wrote:
我大學到博士都讀資管, 在業界工作十餘年, 寫過的程式語言包含 X86 Assembly, Fortan, Pascal, C/C++, GWBasic, VB, VB.Net, Java; 寫過的資料庫程式包含Informix, Oracle, Visual FoxPro/dBASE, SQLServer, 也曾當過四年DBA, 當過兩年Project Manager.

以資管本行來說, 算是很有經驗.
若想學程式語言, 基本上先完全學會任何一種(除了組合語言外), 其它的都差不多. 因為不論是不是物件導向, 寫程式靠的還是邏輯, 也就是如何把做事情的方法以程式碼來表達....(恕刪)


把資料結構學好, 程式語言則是一法通, 萬法通, 只要你不要一開始選錯語言: Basic就是錯誤選擇.

建議你從 Pascal (也就是 Delphi), C, C++, Java 之間選一個來學, 以簡單性來講, Pascal 是首選,
在程式設計界裡, Delphi 的別名叫做 VB殺手, 其餘的就不多說了.

跟 sambad 兄的背景類似, 我從大學到博士則是這樣的順序: 資工 -> 資傳 -> 資工.

程式語言跟 sambad 兄大同小異: X86 組合語言, Pascal, C, C++, GWBasic, Delphi (Object Pascal),
Perl. (PHP 如果也算的話, 就算一個) (C++ 包含 VC++ 跟 TC++, BCB)

個人目前還在大學兼課, 給你良心的建議, 如果只是要寫單機程式, 跟資料庫有關的話, Delphi 絕對是首選,
只要你會一點點英文, Delphi 的語言: Obecjt Pascal 就跟寫英文文章一樣簡單, 結構也涵蓋了程式語言
結構當中所要求的所有架構.

Basic 沒有指標, 無法在呼叫副程式的時候使用 call by reference, 這是致命傷, 但也要等你已經被污染了
以後才會發現這個問題, 而且到時候你也很難再跨到別的語言了, 因為觀念不正確的關係, 要從超弱型別, 沒有
指標的 Basic 轉到其餘任何一個語言都很難的.
3 *的毀台計畫, 請去了解, 如果了解還買3 *, 那你就是幫助3 *毀台的罪人之一.
要看樓主學程式的目的..
商業應用 非深究的話
光excel vba、access vba已經十分夠用了
用到vb去寫dll元件或是使用者介面 已經太多了..
一般使用者跟IT人員著重點並不相同

如果是本科系或想深究的話
我覺得從c->c++->java是一條不錯的學習路線
c適合學程序導向的程式設計 程序導向符合一般人直覺 還有指標概念
c++適合學物件導向的核心:封裝、繼承、多型性 經典的教材也多
這時再碰java有很多好處
因為java的沒有指標其實是統統都是指標..
很多java設計上的優點 如果從已經了解c++的人來看 是很容易理解的 反之不一定..

再輔以design patterns、資料結構&演算法、系統分析(E-RD DFD UML)等設計層面的東西 就很完整了
其他枝枝葉葉可視個人工作需求學習 反正那些東西大多來的快 過期的也快
先說 我五專畢業 所以我講的聽聽就好.

X86 組合語言, Basic, Pascal 是學校學的, 工作上只用過組合語言, 因為要改網路卡的程式, 也沒其他工具了.
15年的工程師工作上用到才學的有 Cobol, C/C++, Clipper/DBase, Foxpro, Access, ABAP.

不覺得哪種程式特別好或特別差, 用途不一樣, 不過從 BASIC 那種直線式的思考到現在物件導向的開發方式有很大的不同, 而且軟體公司都有自己的函式庫, 自己拿手的 (一說是包袱) 語言, 不過追隨微軟的腳步似乎是不錯的想法, 只是大多數語言都會過期, 微軟不會賣一套讓你用一輩子的, 要有心理準備.

寫程式是個苦差事, 這種技能拿來訓練自己邏輯思考還不錯 , 當入門的踏板也不壞, 要拿來謀生就有點辛苦了.
要推 other944 兄的最後一句.
[拿來謀生就有點辛苦了]

台灣作程式設計,只能求得 吃不飽,花不夠,餓不死 的情況,
俗語說:程式寫的好,要飯要到老.
每天與爆肝為伍,
實在不是好職業.
BASIC 有很多種,
VB 已經支援函式的Call By Reference 或Call By Value,
而VB.NET 實際上只留VISUAL BASIC的型,
骨子裡,已經變成JAVA/C++ 的變形 ----- C# 了,
所以可不要拿以前傳統BASIC的觀念看VB.NET了

DELPHI 也有兩種,
DELPHI for WIN32 (傳統的DELPHI) 及 DELPHI.NET
DELPHI.NET 受限於 .NET FRAMEWORKS ,
M$ 控制.NET FRAMEWORKS,等於控制其他工具的能力,
已經變成 披著狼皮的羊 ,
與 VB.NET,C#.NET 差距不大了.
寫程式只能拿來糊口? 看寫什麼程式吧..
若你寫的東西是人人都能寫的, 那沒話說, 東西簡單沒啥價值. 若你寫的不是人人都能寫的, 那當然價值就高了. 不論做什麼事情都一樣, 你只會做人人都能做的, 那還談什麼價錢? 所以, 之前我才會說, 要把統計學, 作業系統, 演算法等等東西都學好, 那你才寫的出別人寫不出的東西. 舉個例子好了, 今天你去寫個商務程式, 裡面要使用GARCH來做時間序列預測, 你用什麼寫? 若你老闆打死不買套件, 打死不買dll, 你要自己寫時該怎麼辦? 即便你下載程式碼, 搞不清楚背後的原理, 那你也只能寫出個四不像的東西. 若只會寫寫什麼進銷存, 那東東去網路下載就一堆了, 而且一大堆人會寫. 簡單說, 只會大家都會的, 那你就沒價值; 會一些別人不會的, 那你才拉的高價碼. 我由剛畢業當程式設計師時開始, 年薪沒少過百萬, 誰說寫程式只能糊口? 看寫什麼罷了.
之前讀書的時後, 常會覺得某些東西可能用不到就沒好好讀. 我最早讀電工, 讀的沒興趣, 考插班. 第一次考的時後, 老覺得什麼題目不會考, 結果剛好死翹翹. 第二年學乖了, 我先假設什麼都會考, 於是什麼題目都做, 一題也不放過, 最後考到台北某國立大學資管系. 當時考大學插班比現在難的多, 我去考的時後四百五十個才取三個, 沒當兵還沒加分優待咧, 另外兩個都靠當兵加分進去. 經過考插大之後, 我就假設日後什麼都有可能用到. 後來開始工作的時後, 才發現以前很多同學沒好好唸的東西(像是經濟/會計/統計/微積分/作業系統/演算法/資料結構/資料庫..), 竟然在日後變成職場上謀生的利器. 反正來什麼寫什麼, 要問我意見我也知道什麼是什麼. 平凡的生管報表, 加一些迴歸分析或時間序列進去之後, 你寫的報表還可以預測何時機器該維修(預測良率變化再分析機器例行維修週期的相關性); 你也可以利用關連性分析, 如Association Rule來找尋隱藏在資料庫當中的秘密. 例如我成功的找出來過誰與誰一起當班時良率會下降, 事後證明那兩人在一起就會打混. 然後, 數學好一點可以搞破解, 我還成功的破解公司買來系統的薪資加密(喵的, 解聯立方程罷了, 寫加密的人程度太差該打屁股), 看到全部人的薪資(真的人比人會氣死人, 公司說薪資是秘密不是沒原因的). 後來改去國內某大證券公司搞財金, 變成在寫預測程式, 寫股票操作模擬, 建構股票操作策略模型一類的工作, 當然價碼又更高. 反正公司有資料庫可用, 拿來就自個兒搞, 我寫的出人家寫不出的東西, 價碼當然就不同. 而且我這個人超級準時--時間一到一定下班, 我到現在還搞不清楚成天加班寫程式是在寫什麼碗粿. 反正有績效公司也沒人管我, 真要管我就跳槽給你看. 反正業界呆久了, 誰都知道誰有幾兩重, 要跳糟到處都可以跳.
所以, 寫程式不只能糊口, 讓你提早退休也不難. 重點是, 你不能只會大家都會的, 當你只是個可有可無的人時, 那麼薪水就不是你能決定的了. 若你能早日變成公司當中"不可或缺"的人, 那你的薪水就不只是糊口那麼少了. 這個道理, 不只是寫程式, 所有的工作都一體適用.
公喵不帥, 母喵不愛. 公喵愈壞, 母喵愈愛. 不帥的公喵想要母喵愛, 就只好學壞.
sambad wrote:
寫程式只能拿來糊口?...(恕刪)

雖然感覺有點離題了
不過sambad兄確實講的很有道理
大部分人都只是選擇自己想要的
只有少部分人才真正是一步一腳印
sambad說的真的是很有道理啦
電腦這種東西基本功很重要的

那麼我個人覺得寫程式就好像是工地堆磚頭吧 以後給印度人搞就好
應該往設計的方向走 就好像建築師一樣
很多時候也是需要創意的
也有的人會設計又自己動手 好比畫家或雕刻家

雖然可能有點離題
但是您想要寫的東西 應該外面可以買現成的吧
通常很多時候in-house自己搞出來的東西
反而更花錢 還沒有外面現成的好

所以學語言是一回事
但是真的要寫的話 商業價值要考量好

你有想過測試的問題嘛
您可知道測試也可是很大的一門學問喔

對了小弟我的大學依序是 Java-C-C++ 或是 C-Java-C++
看你一年級怎麼選課 我是小時候Basic, Pascal, VB,
大學 Java, C, C++, VHDL, Prolog, Smalltalk...etc.
sambad wrote:
我由剛畢業當程式設計師時開始, 年薪沒少過百萬...(恕刪)

同感.
其實程式設計師的工作還不錯, 工作時間自己掌握, 不用打卡.
寫的好的話, 年薪破百是不難的.
我大學時就開始寫程式, 當時就破百了.

sambad 兄, 不好意思. 有點意見和你不同.

Delphi 雖然也是 OOP, 但是我個人覺得它把物件包裹的太好, 雖然入門容易, 深入卻很難.
加上最近的開發工具都有免費化的傾向.
財務問題讓 Borland 很難再繼續維護 Delphi, 現在連 Borland 的首頁都看不到 Delphi 的影子了.
我個人覺得 Delphi 和 Turbo Pascal 一樣有斷代的危機.

給也想破百的人一點建議, 學一些別人認為困難而不想學的.

VB 這麼好學, 很多人都會, 月薪很難破五萬. 當然只能拿來糊口

C++,C#,Java 比較少人會, 薪水自然比較高.
Oracle 更討人厭, 要找一堆方法來避開它的 BUG, 搞懂它之後, 薪水也不會低.

很難得在這裡遇到同行, 很高興可以和你們交換彼此的心得.


我也是寫程式的

要走微軟的路
無疑的就是DOT NET
沒啥好選的

這三年來看過不少系統
VB跟ASP漸漸的萎縮了

VB6的話...小弟認為現在入門的話,可以不用考慮了
公司現在碰到的新案子已經不太有VB6的

DOT NET大部分都是用C#跟VB.NET的語法來開發的
觀念通...寫起來都差不多

程式這種東西...追著跑就對了
  • 7
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 7)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?