Re: [請益] 誰最適合做Java學習者的墊腳石???
交大大二哪有教Java = =?
我大學讀113CS,大一上教C,大一下幾乎教C++。
說「幾乎」的原因是,我那屆時還有一個老師教Java,
但他退休了,之後就全都是C++。(據我所知)
(有個小八卦就是...有一些老師在反彈為啥大家都教C++就那個老師要教Java...www)
113CS幾乎大部分人都是寫C/C++,會寫Java的人很少。
當初上Compiler的時候,老師很驚訝的是全班90人幾乎沒有人會Java XD
我研究所116,讀的是軟工,就有涉及比較多OOAD的部分,
也是到研究所後才開始學Java,
學了之後才發現以前的OO觀念根本一蹋糊塗...
像是以前根本不知道OO的Polymorphism的強大之處,
Static Polymorphism和Dynamic Polymorphism的差別也似懂非懂,
以及很多OO的觀念都重新建立起來。
我身邊有些同學C++超強,不過OO觀念很弱,
像是以前就有聽到「我不喜歡寫太多個class」之類的話。
C++雖然也有OO,但通常C++教科書上比較不會著重這塊,
或是簡單介紹繼承、多型...之類的OO語法。
不過我學Java的時候,教科書就有介紹比較多OO設計守則的觀念部分,
像是為什麼要寫 Set set = new Hashset();
而不是寫 HashSet set = new HashSet();
畢竟Java是99%的OO語言,當然會有比較多的著墨在OO設計這塊。
我覺得,若你想好好學OO,那Java真的是個不錯的選擇。
雖然我也是先學C++再學Java,
不過我不覺得這些語言的學習先後順序會有什麼差異,
因為他們都是程式語言,觀念大同小異,只差在語法不同。
接著關於你的疑點二,
我覺得做高階軟體設計的Java Programmer的確不用深入了解
數位邏輯(電路設計)、計組的硬體架構設計,或是OS的排程演算法等等,
但這些課程你還是要有基本的觀念,你可以不用精通但是要有一些概念,
像是基本的邏輯概念、bit運算,process/thread之類的基本概念。
我一直覺得對於讀CS的人,程式語言只不過是個工具,
最珍貴的點在於我們懂得作業系統、演算法、資料結構、OOAD等等的觀念,
不然說真的買本書來讀或是去巨O學一下出來大家都馬會寫程式,
但寫的好不好其實就很容易看得出差別。
如果你真的不想碰太底層的知識,
那我覺得至少演算法和資料結構一定要學的夠扎實。
最後是個題外話,在台灣寫C/C++比較好找工作薪水也比較高...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.104.14.103
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1445011976.A.D85.html
推
10/17 00:28, , 1F
10/17 00:28, 1F
→
10/17 00:28, , 2F
10/17 00:28, 2F
→
10/17 00:31, , 3F
10/17 00:31, 3F
→
10/17 00:39, , 4F
10/17 00:39, 4F
推
10/17 01:39, , 5F
10/17 01:39, 5F
→
10/17 01:39, , 6F
10/17 01:39, 6F
→
10/17 06:49, , 7F
10/17 06:49, 7F
推
10/17 08:18, , 8F
10/17 08:18, 8F
推
10/17 09:41, , 9F
10/17 09:41, 9F
→
10/17 11:12, , 10F
10/17 11:12, 10F
推
10/17 15:22, , 11F
10/17 15:22, 11F
→
10/17 15:23, , 12F
10/17 15:23, 12F
推
10/17 15:36, , 13F
10/17 15:36, 13F
→
10/19 09:33, , 14F
10/19 09:33, 14F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 5 篇):