推 beaprayguy: 你真的太佛系了 06/27 06:27
推 s29940: 感謝高人指點,推 06/27 06:30
→ beaprayguy: 專業領域方面,這gap真的不是1 2年認真可以跨過。 06/27 06:30
→ beaprayguy: 我非本科很能認同目的導向。在達成目的持續學習 06/27 06:31
→ beaprayguy: 並用有效率的學習。才是最重要 06/27 06:31
→ beaprayguy: 非本科會經過很多垃圾路。 06/27 06:32
推 dannypsnl: 推 06/27 06:56
推 jack85408540: 推 06/27 08:03
推 HAKUKE: 好文推 06/27 08:22
→ vi000246: 超認真文 06/27 08:28
推 tkhan: 太強.. 06/27 08:29
推 cphe: 好文推 06/27 08:37
→ loveflames: 如果學C++是目的取向,非本科的還是不要學比較好 06/27 08:55
→ loveflames: 一來是學習困難,二來是C++的工作難找 06/27 08:55
推 chupiggy: 好心人 06/27 09:07
推 final01: c++工作不難找,如果敢在履歷上寫過精通c++有非常多工作 06/27 09:07
→ final01: 可選吧!XD 06/27 09:07
推 shvanta: 超棒的觀念詮釋 06/27 09:21
推 angel00540: 話說台科電資上完確實C只有基礎 所以可能是本科系的 06/27 09:28
→ angel00540: 好像只有資工有演算跟資料結構 06/27 09:28
C++ 從最早發展到稍微穩定有點樣子的時候是 1990 年,標準化是 1998 年末。
2018 - 1998 = 20,換句話說教 C++ 的最少要在 20 年前有好好學習過 C++。
更不用說在 2011 年底 C++ 還有一次大改,也就是說教的人在 7 年前還得更新知識。
在學校做研究的教授都在衝論文數,而且從歲數反推就會知道他們根本沒機會學好。
沒學好的東西又怎麼可能拿出來教,所以當然是只能當成 C 語言來教。
加上科大的資工系歷史很短,初期很多是電機、電子這邊的教授跑過來開資工系。
要他們寫教你程式,不如要他們教你怎麼讀那本史密斯還比較有用。
其次就是應數、資管、網通所等等過來開的,這些專長都是偏應用的部分。
所以教授的專長要嘛不是很數學、很微積分,就是很硬體,要不就是很應用。
能完整傳授資工核心科目的教授在科大一直都有限,很多靠自學還是比較快。
這和早期一堆學校開設資管系,卻沒有資訊背景師資,
只是因為資管系變得很熱門,所以幾乎只有純管背景的教授就硬開出資管系很相似。
更何況學術界不會太重視工具的使用,普大科大其實都很缺會教 C++ 的教授。
以前學術界是有講師這種注重教學的教育者存在的。
但是不知道什麼時候開始,可能跟四技二專升格科大而想跟他們區別化有關,
學校 0 講師、所有師資都有博士學位這點居然可以拿來當成學校特色和優勢在講。
甚至還有學校逼迫副教授幾年以內要升等成正教授,不然會被踢出去。
升等的途徑是什麼?在早期不論科大還是普大,都一樣是論文點數。
2000 年初期台科身為技職龍頭,卻率先叛離技職體系,開始偏愛高中生而非高職生。
這背後的原因到底是什麼也很明白,就是養肥養大以後拐他們簽下去,幫他們發論文。
這種瑕疵滿滿的評鑑制度洗走了一波認真教學的教育家,留在學術界的大都剩嘴砲王。
推 y2468101216: 認真推 06/27 09:48
推 g5637128: 推 06/27 10:05
推 yamakazi: 遇到貴人了 06/27 10:13
推 jn840129: 推 06/27 10:24
推 Elaine0530: 推 06/27 10:32
推 GameHeven: 無敵認真 06/27 10:49
推 transforman: 超認真文給推 06/27 10:53
推 lu1626: 願意花時間打這一長篇 給推 06/27 11:18
推 popcool: 認真教學給推 06/27 11:21
推 SongIceFire: 06/27 11:25
推 turkeyonly: 請受我一拜 06/27 11:41
推 benben994: 你怎麼可以解釋的這麼好 06/27 11:47
推 cool9203: 推超認真 06/27 11:50
推 kerkerhaha: 這個Diu 06/27 12:04
※ 編輯: tinlans (122.116.164.123), 06/27/2018 12:11:33
推 cphe: 半路出家的真的不用堅持初學要選C/C++,現在不是十幾二十年 06/27 13:19
→ cphe: 前,現今現代化的語言很多可以學,學起來也有成就感 06/27 13:19
推 jojojen: 推 06/27 13:23
推 uly: 每次聽到初學者說要學好C++就好想吐槽 時代變了 06/27 13:39
噓 s89162504: 平衡一下 人家只是想問本書而已 06/27 13:50
→ s89162504: 你貼個c++ reference的網站都比這樣碎念一堆有用吧 06/27 13:51
學習方法不正確,看哪本書都沒有用。
不然我可以照本宣科搬出兩本聖經本:
1. The C++ Programming Language, 4th Edition
2. C++ Primer, 5th Edition
然後一本查詢函式庫用的工具書:
3. The C++ Standard Library: A Tutorial and Reference (2nd Edition)
2 在前一篇有人推過了。但是那本書更新 C++11 之後的方式我覺得很偷懶,所以不推。
如果是在 1998 年到 2011 之間的時期問,我會推第三版,第四版不推。
1 基本上只推薦讀原文書,中譯本把原文書強調重點用的藍字弄不見了,不利於閱讀。
好,然後 1 這本書一共 1368 頁,2 這本書 976 頁,3 這本 1128 頁。
我什麼都不講,直接開這三本丟給他,最多跟他說 2 可以先不讀。
以前我也常幹這種事,結果通常就是對方拿到書幾天後跑來跟我說:
「哇,你好厲害喔,這麼厚的書居然讀得完好幾本。」
然後呢?就沒有然後了,頂多就是幾天後拍賣網站上多了幾本九成新電腦書。
不然就是供在自己書架上,朋友來看到會問,然後回答說自己其實買來以後沒看幾頁。
讓人推薦選書就是這樣,也不知道買這本書是要吸收什麼東西,最後就是浪費錢而已。
所以我叫他自己去天瓏書局先找適合自己看的書打基礎啊,總比丟磚頭書給他讀好。
說真的基礎要打得紮紮實實,除了這幾本我真的沒有什麼其它推薦的。
但是一開始就去看這些書真的好嗎?感覺這樣只是在叫人不要學 C++ 而已。
加上我有爬到他在八卦板發過的文:
[問卦] 大學原文書再衝沙小?
https://www.ptt.cc/bbs/Gossiping/M.1521798376.A.4B3.html
你覺得有著這樣想法的人,不告訴他程式語言該怎麼學,就丟千頁聖經本給他,
對於一個會發文說原文書 90% 以上都是幹話,只好去刷題目的學生而言,
他拿到書以後會有什麼反應?
他找到很多圖解的書覺得很適合他,但他也發現圖解多的書寫不了多少東西。
你可以想像那些上千頁的聖經本,再對每個觀念逐一加上圖解會有多厚嗎?
看圖解的書不是不行,拿來幫助入門可以,但最後養觀念還是得看都是字的書。
可是都是字的書恐怕會讓他覺得裡面充滿著廢文,不知道怎麼讀下去。
用網路學程式語言,其它語言或許可以吧,C++ 恐怕很難。
至少我還沒看過履歷寫精通 C++ 的人是看網站學好 C++ 的,如果有的話我真想見見。
寫略懂的的確不少,但很多一問三不知,而且常常在問怎麼學的都回答看網頁學。
問 iterator 會失效的狀況也常常回答不出來,問了發現以前老師是發一張表給他背,
考試考完就忘記了,課修完以後就再也沒複習過,研究所也不考,所以現在想不起來。
這都是沒有系統化學習造成的問題,從根本上去理解的話這些根本不可能忘。
而且我也說了,如果他聽不進去,堅持要人家推薦書給他的話,
他可以去 C_and_CPP 板發文問,那樣的話還會比較多人回。
只是他得到的答案,跟他自己去 Google 查到的應該不會差太多吧。
→ aszx4510: 樓上 人家Andes你敢嘴? 06/27 13:56
推 stfang925: 回答一篇文也可以幫助無數有類似問題的人 為何不要 06/27 14:10
推 stfang925: 要書關鍵字google10秒鐘就有答案了 而且如果整篇文看 06/27 14:13
→ stfang925: 完還能理解成碎念也是有點慘... 06/27 14:13
→ eva19452002: 本篇讓我快速複習了程式語言 06/27 14:24
推 bnd0327: 推認真 06/27 15:17
推 xsion: 你Google原po發過的文應該會先看到一堆八卦廢文吧 06/27 15:47
是啊,但多少還是看得到他學習和成長過程的蛛絲馬跡。
推 justben: 認真推 06/27 15:55
推 Ekmund: 從方向到範例都解析一遍了...你真的是個好人 (遞 06/27 16:04
→ kikilalagirl: 留在學術界的大都剩嘴砲王 XDDD 06/27 16:04
※ 編輯: tinlans (122.116.164.123), 06/27/2018 16:07:57
→ Ekmund: C我現在定位成一個接觸程式的進入點 它和電腦的運作邏輯 06/27 16:07
→ Ekmund: 貼合得比較密 不一定要將它發展成謀生工具 實際上也大多 06/27 16:08
→ Ekmund: 不是 現在是web面需求滿天飛 講到"學好"什麼 先有方向吧 06/27 16:10
推 cphe: 噓的人根本想紅,這篇可以留給非本科或覺得C/C++學不會人生 06/27 16:20
→ cphe: 就失敗的人看,何樂而不為? 06/27 16:20
→ cphe: 想知道書,專版爬一下就很多了 06/27 16:21
→ Ekmund: 我現在才注意到發文時間凌晨四點... 06/27 16:22
推 beaprayguy: 我是電子科系。非常懂原po表達的 06/27 16:30
→ beaprayguy: 電子科大教授就像版大講的 06/27 16:31
推 BigHeadDoggy: 推 06/27 16:48
推 Eric0605: 推 06/27 17:09
推 keke0421: 熱心推...你也打太多了 @.@ 06/27 17:16
推 greenstar27: 大推!!!也受教了 06/27 17:40
推 TitanEric: 推超級認真文 06/27 18:32
推 RadiationXen: 熱心推 06/27 19:44
推 E33258: 認真推 06/27 20:11
推 Raymond0710: 太認真啦 推 06/27 20:18
推 pttrAin: 你怎麼可以這麼專業這麼佛心qq 06/27 20:26
推 MyNion: 好猛,原PO你花了多少時間打這篇文啊? 06/27 20:54
推 es8603: 超級熱心好人 還去google他的po文做分析 推 06/27 20:58
推 sa074463: 原PO熱心又超強 推 06/27 21:41
推 s06yji3: 跪著推 06/27 22:31
推 scps950707: 推晶心 06/27 22:46
推 qpalwosk: 意圖使人求內投andes..XD 06/27 23:29
推 ketrobo: 這好文 06/28 00:25
推 qwe85158: 推! 值得學習 06/28 00:30
推 king37937: 推!有目的地學習才能持續下去 06/28 01:21
推 Lhmstu: 推用心 06/28 03:03
推 oxlittle: 我覺得螞蟻書不錯 06/28 04:28
推 becca945: 我喜歡螞蟻書 06/28 08:52
推 wuliou: 這篇必須推 06/28 09:13
推 ralfer: 推 當年入門自己啃C++ primer超痛苦的... 06/28 10:50
推 chouanhsu: 推u文 06/28 11:34
推 swinds24: 推薦,覺得寫得非常好! 06/28 11:40
推 zonppp: 推~動機真的很重要,沒有實際要完成的東西真的會不知道在學 06/28 15:10
→ zonppp: 什麼 06/28 15:11
推 suninrain: 推推~真佛心~學C++有文主帶入門真的很有方向啊~ 06/28 15:45
推 BlazarArc: 推 06/28 16:03
推 NCTU87: 對詳細 06/28 19:04
→ NCTU87: 推== 06/28 19:04
推 hakosaki: 詳細推 噓文哈哈哈哈哈 06/28 19:28
推 akito117: 好文推 06/29 10:05
推 gowellplayer: 推 06/29 10:08
推 hotahaha: 推 06/30 09:38
推 zenuo: 佛系神人 推 06/30 09:47
推 Dreamerrr: 獲益良多 真的感激不盡 謝謝原Po 推! 07/02 02:55
推 jellyfishuan: 跟原原po有類似的背景然後是資工升大三 看到這篇讓 07/02 13:52
→ jellyfishuan: 我有方向知道暑假要怎麼精進自己了QQ 07/02 13:52
→ jellyfishuan: 有時候真的很不適應現在這種教學方式哈哈 07/02 13:52
這篇其實大多是在講 C 基礎,如果已經對這些沒問題,那 C++ 的學習才剛要開始。
C++11 之前的書大都粗略把 C++ 的 programming paradigm 分成四大類:
1. procedural programming
2. object-based programming (又稱為 ADT)
3. object-oriented programming
4. generic programming
如果只學跟純 C 共通的部分,那差不多就是只學到四分之一的 C++03。
一般學校可能會教到 3 的開頭,後面就會因為老師本身不熟物件導向教不下去。
物件導向不是單純把現實世界的物體假想成物件來寫程式這麼簡單,
但很多台灣人寫的書會這樣胡謅,造成新手製造出很多濫用、誤用繼承的案例。
先不要說新手,很多自稱熟悉物件導向的人終其一生都可能不知道怎樣才是正確的。
不得不說歐萊禮的深入淺出系列救了不少人,可惜它的範例是 Java。
推 CJhang: 優文 以前走過 幫推個 07/04 03:19
※ 編輯: tinlans (122.116.164.123), 07/06/2018 14:12:18
推 A1ch3mi5t: 推 07/06 23:48
推 rightbear: 推優文,最近也要開始學C++ 02/22 16:58
推 physichu: 認真推 06/20 20:46
推 iloveapple: 太強了 09/24 01:18
推 pepperonm: 好文推 07/28 04:38