如題~我已經訂定目標了..要讀資工系
所以我想先自行自修
看了知識+..大多人說C直接跨到C++會有些難
我也查過各大學資工系所學的
他們大一也是先修C->JAVA..好像沒有C++的課程
所以..不知道我學的順序有沒有錯呢??
再來C我已經買了一本了 明解C語言教學手冊(最新出版的)
目前學的還不錯(應該是剛起步的關係吧XD)
不知道這本夠不夠呢??
另外可以推薦我JAVA跟C++還不錯的自學書嗎??
2007-10-07 12:04:03 · 4 個解答 · 發問者 ? 2 in 電腦與網際網路 ➔ 程式設計
其實嚴格說起來, 這三者並沒有強烈的學習順序, 要看用在什麼領域.
如果你什麼程式語言都沒學過, 先學 C 是相較容易的, 因為你可以先把心力放在學習函數, 判斷式, 迴圈等. 事實上程式語言只是解決問題的過程, 不是結果. 先把資料處理的基本工學好, 也許將來你的工作主要是在 Excel 上寫 VBA 也說不定.
C語言的重要精髓 "指標", 則是實作資料結構的好工具. 大部分演算法與資料結構的課程, 應該還是以C語言為主要的實作工具.
C++ 是不是 C 的延伸, 這個可能會引起一陣論戰 (就像連 DOS 是不是一種作業系統都可以吵了), 不過有一種說法是, C 跟 C++ 是很不一樣的東西, 沒學過 C 的話, C++ 可以學得比較好.
因為 C++ 是強調物件導向的觀念沒錯 (雖然有人認為 C++ 不是完全的物件導向語言), 但因為相容 C 的語法, 我看過很多人是用 C++ 的編譯器沒錯, 但骨子裡還是 C 語言的寫法.
JAVA 有人說是退化的 C++, 也有人說 JAVA 比 C++ 更是純粹的物件導向語言, 其實這都不是我認為實務上 JAVA 跟 C++ 的差異. 這兩者最大的差異就是 "執行速度" 與 "跨平台能力".
如果你要寫防毒軟體, 影像處理軟體, 影音播放軟體等, 你不會用 JAVA, 甚至我知道某些產品只用 Pure C 開發, 因為必須要求程式體積最小化, 以及執行速度最大化.
相反的, 諸如電子商務平台, 甚至是連保守著稱的金融產業, JAVA (J2EE) 平台成為了顯學, 因為執行效能可以靠平行處理解決, 跨平台性反而是重點, 因為越是古老龐大的機構, 越被大型電腦商給綁住, 例如某金融機構有半數的主機是 IBM R6, 一套只能安裝於 Windows的系統對他們就完全沒有吸引力.
所以回到你的問題, 這三者其實沒有一定的順序可言, 視你的需求而定. 不過大致來說, 先學 C 是不錯的. 用一個學期的時間把程式設計的基本觀念學起來, 將來不管要學 C++ 還是 JAVA 都沒差, 同時學也有可能.
C++ 自學書籍, 推薦 侯捷 出版的書, 由淺入深, 精闢入裡.
2007-10-11 12:37:04 · answer #1 · answered by 微軟卓越魔人 6 · 0⤊ 0⤋
我絕得應該是對的
應該夠吧
我沒看過你所說的那本書
自學書我不知道
2007-10-07 12:56:21 · answer #2 · answered by Anonymous · 0⤊ 0⤋
這樣的順序是對的
因為 C 是結構化語言
JAVA 為純物件導向語言
C++ 則是在C之上發展
但不純粹的物件導向語言
所以變得很複雜
以前在元智資管
大一上學C
大一下學JAVA
後來到中央資管
也發現他們也是
大一上學C
大一下學JAVA
C++雖然以C為基礎
但是難度比起JAVA真的怪招很多
自學書則看自己的程度
什麼都沒概念的人可以去買
博碩文化一系列「入門」程式設計的書
入門書比較重觀念
之後可以參考一系列 C/C++/JAVA
「HOW TO PROGRAM」的書
因為範例蠻詳細的
之後你應該就能看更難懂的書了
2007-10-07 12:47:22 · answer #3 · answered by Ashley 7 · 0⤊ 0⤋
沒學好 C 語言,當然學不好 C++。C++ 是建構在 C 語言上面的,只不過就多了個「物件導向」的內容,學好 C++ 的物件導向,自然就可以自行買書來學 JAVA 語言。
因為 JAVA 語言是源自 C++ 的物件導向。
2007-10-07 12:33:11 · answer #4 · answered by Big_John-tw 7 · 0⤊ 0⤋