看板 C_and_CPP 關於我們 聯絡資訊
今年淡江資工大一 準備要考轉學考 目標是中字輩的資工 讀書應該會是一本計概搭配一本螞蟻書 看了一下計概的考古題 大部分好像是C C++好像比較少 看到版上有人推C how to program跟C primer 想請問如果要應付轉學考的話有哪些書可以推薦嗎 另外目前計概的用書在猶豫 Foundations of Computer Science 以及 Computer Science: An Overview 如果可以的話請版上順便推薦一下 感謝 PS 聽我們教授說計概的書不要買中譯的? 因為雖然能較清楚專有名詞 但我怕觀念會弄不懂? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.221.62 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1473691036.A.A88.html ※ 編輯: SkIllen (36.224.221.62), 09/12/2016 22:40:17
Caesar08: 如果只是要轉學考,應該是不用讀到那麼精 09/12 23:05
Caesar08: 寫寫uva之類的應該就可以了 09/12 23:05
計概的話是系上的書就是Foundations of Computer Science
Sidney0503: 不用學語言本身 09/13 08:18
Sidney0503: 幾個重點知道就好 09/13 08:19
想說是除了考試 資工方面也不要放掉 ※ 編輯: SkIllen (59.115.138.148), 09/13/2016 08:25:44
Sidney0503: 學語言不要從C開始 建議python 09/13 08:35
CoNsTaR: 其實我會推薦從 haskell 開始 雖然幾乎沒有人這樣做 09/13 09:13
CoNsTaR: 你只要有一點點 lambda calculus 的概念 haskell 非常容 09/13 09:14
CoNsTaR: 易入門 09/13 09:14
uranusjr: 其實 Haskell 是入門好語言沒錯, 但它沒辦法做什麼很炫 09/13 19:45
uranusjr: 砲的東西, 除非 CS 本科或願意拉長線, 否則還是不太好.. 09/13 19:46
uranusjr: 入門第一步是先學一個用不太到的東西, 這有點太硬了 09/13 19:46
CoNsTaR: haskell 可以做 quicksort 啊 (笑 09/13 20:36
Sidney0503: 也不見得要用haskell 你如果能用C寫tail recursion 09/13 21:56
Sidney0503: 也是類似的思維 09/13 21:56
Caesar08: 他只是新手,而且只是要應付轉學考,沒必要學那麼多吧 09/13 22:09
CoNsTaR: 我是覺得你要是真的學到 haskell 的精髓 C 對你來說根本 09/13 22:23
CoNsTaR: 就小菜一碟而已 09/13 22:23
CoNsTaR: 而且最神奇的是 要學到 haskell 的精髓比要學到 C 的容 09/13 22:23
CoNsTaR: 易得多了(當然如果你要繼續往PLT前進又是另一回事了XD) 09/13 22:23
CoNsTaR: 因為 C 語言有太多旁枝末節的常識需要學習 而且語言本身 09/13 22:23
CoNsTaR: 又沒有理論支持(而且雜亂) 09/13 22:23
CoNsTaR: 學到精了也很難對你的語言能力有非常大的幫助 不過能讓你 09/13 22:23
CoNsTaR: 做出很多好玩的東西倒是真的 XD 09/13 22:23
CoNsTaR: 反觀 haskell 雖然很難讓你實作出一些“有用”的東西 但 09/13 22:23
CoNsTaR: 是學習它的型態系統、語言特性卻能夠讓你的語言能力立即 09/13 22:23
CoNsTaR: 有長足的進步 09/13 22:23
CoNsTaR: 總之假如以增進語言能力為前提 學 haskell 我認為是穩賺 09/13 22:23
CoNsTaR: 不賠的啦 XD 09/13 22:23
Sidney0503: "沒有理論而且雜亂" 在C語言主場開戰?? 09/14 04:56
Sidney0503: 學到 haskell 的精髓 C是小菜 是要害死誰? 09/14 05:00
Sidney0503: 純函數學一學可以秒懂指標 說屁話也要有限度 09/14 05:01
Sidney0503: 我直接說 沒有背景學語言就是從純物件開始 09/14 05:11
Sidney0503: 不是perl python ruby 至少也是java 09/14 05:12
Sidney0503: 然後看需求 資工系99%會用C/C++ 雖然兩個本質不一樣 09/14 05:13
Sidney0503: 學校都會教成差不多 重點不是語言本身 而是C會和系統 09/14 05:14
Sidney0503: 綁在一起 一堆API call是理解系統運作 09/14 05:15
Sidney0503: 除非要增進語言技巧本身才是lisp haskell這種非主流 09/14 05:16
Sidney0503: 不然就是看需求 網頁js php 架站看用的後端語言 09/14 05:17
Sidney0503: 快速開發小應用程式就是ruby python perl 09/14 05:18
Sidney0503: 正統資工會有計算機概論 這東西懂了才會知道C的很多 09/14 05:20
Sidney0503: 設計原因 09/14 05:20
Sidney0503: C不要是第一個語言 但是一定要學過C 09/14 05:22
Sidney0503: 如果立志不碰系統 那連C都不用 純前端也是可以活很久 09/14 05:23
Sidney0503: 如果要走蘋果 那直接衝swift也可以 09/14 05:25
firejox: 學語言當然可以從C開始 09/14 07:46
firejox: 而且C本身不難 要記得keyword也不多 09/14 07:47
firejox: 如果從oo language開始學反而會不能理解C的設計 09/14 07:50
firejox: C學完後學別的語言 也很容易上手 09/14 07:56
firejox: 至於c++是大坑 學習前請三思 09/14 08:04
CoNsTaR: 我說了 如果重點在語語言能力不知道扯系統和其他知識想幹 09/14 08:17
CoNsTaR: 嘛? 09/14 08:17
CoNsTaR: 還有 C 語法本來就雜亂和在哪版有關係? 09/14 08:17
CoNsTaR: 我多說幾遍C語法雜亂C語法雜亂C語法雜亂還有意見嗎? 09/14 08:17
CoNsTaR: 你要是學了 Type Theory 指標這種 type 的特性有可能不 09/14 08:17
CoNsTaR: 懂嗎? 09/14 08:17
CoNsTaR: haskell 也有指標也能直接存取記憶體位址你知道嗎? 09/14 08:17
CoNsTaR: 如果你說沒有 malloc free 那不就是 leaner type 在做的 09/14 08:17
CoNsTaR: 事? 09/14 08:17
CoNsTaR: 推 haskell 是因為它入門幾乎沒門檻 很容易帶領你進入它 09/14 08:17
CoNsTaR: 的花花世界 09/14 08:17
CoNsTaR: 而且它的語言特性都是有理論證明功能的 你再看其他語言就 09/14 08:17
CoNsTaR: 會發現很多都只是 functional 裡某個東西的子集合或特例 09/14 08:17
CoNsTaR: 但是你反過來反而無法用 command 或是 OO 來說 functiona 09/14 08:17
CoNsTaR: l 什麼 09/14 08:17
CoNsTaR: 如果說學 haskell 之後回來學 C 最有問題的大概就是 muta 09/14 08:17
CoNsTaR: ble 的 variable state 和迴圈吧 09/14 08:17
CoNsTaR: 沒有推 Idris, Agada 而推 haskell 則是因為它易入門 09/14 08:17
firejox: C語法不雜亂吧 語法本身跟asm是一體兩面的 相反的Haske 09/14 09:57
firejox: ll 就XD 09/14 09:57
Caesar08: 如果要增強思考能力,就學haskell,很適合練內功 09/14 10:42
Caesar08: 其他情況就還是學主流語言c c++ python java這類的 09/14 10:43
Caesar08: 中譯的書,缺點就在專有名詞的翻譯不會很好,而你查資料 09/14 10:43
Caesar08: 時,卻都是要用英文,所以你要自己知道他英文是甚麼意思 09/14 10:44
Caesar08: Bjarne-Programming Principles and Practice Using C++ 09/14 10:47
Caesar08: 他說那本書是給完全沒學過程式,或想精進程式技巧的人 09/14 10:48
Caesar08: 不知道好不好就是了 XD(我沒看過) 09/14 10:49
CoNsTaR: 你們是不是對 haskell 有很大的誤解啊 QQ 09/14 11:08
CoNsTaR: add a b = a + b [Haskell] 09/14 11:08
CoNsTaR: int add (int a, int b) { return a + b; } [C] 09/14 11:08
CoNsTaR: 不管怎麼看 Haskell 語法都是比較簡單的那個吧… 09/14 11:08
CoNsTaR: Haskell 真的比 C 容易得多 只是它背後的理論基礎太嚇人 09/14 11:08
CoNsTaR: 而已 09/14 11:08
CoNsTaR: 不過 C 需要的額外知識&常識也是非常多的啊 09/14 11:08
Sidney0503: 哈哈哈看你下面那一篇回文誰才是有偏見大家心知肚明 09/14 11:36
Caesar08: 下面那篇文章是發文的人有問題啊 09/14 11:39
Sidney0503: 兩個人一搭一唱 要不要順便扮黑臉白臉 09/14 11:43
Sidney0503: 第一次我就在暗示你們邏輯很差 現在還是繼續自曝其短 09/14 11:44
Sidney0503: 自己先看看哪裡有問題 看不出來付費給我 我再說 09/14 11:46
firejox: @CoNsTaR 沒有誤解啊 add a b [haskell] vs a + b [C] 09/14 12:08
firejox: 而且你都說理論很嚇人了 這樣會嚇跑初學者 09/14 12:08
CoNsTaR: 看 Sidney 大大在很多地方都批評別人邏輯差啊 09/14 12:18
CoNsTaR: 想必 S 大一定邏輯很好 Logic 和 TT 是 PL 的基礎您知道 09/14 12:18
CoNsTaR: 嗎 09/14 12:18
CoNsTaR: 怎麼會說 Haskell 學遞迴就 OK 呢?請開示 09/14 12:18
CoNsTaR: f 大 我舉的是兩個語言的函式定義 09/14 12:24
CoNsTaR: C 和 Haskell 把兩數相加的 expression 同樣都是 a + b 09/14 12:24
CoNsTaR: 啊… 09/14 12:24
steve1012: 就說要應付轉學考了 一直學haskel 先學好c吧 09/14 14:43
x000032001: 看C how to program啦 haskell中字輩轉學考會考逆? 09/14 16:52
yvb: 六樓回五樓話, 從此蓋起 比薩斜塔 :P 09/14 17:08
CaptainH: 完全不建議先學haskell,理論複雜,實際用起來又綁手綁 09/15 16:57
CaptainH: 腳 09/15 16:57
ronin728: 都說是轉學考了,一定都是 C C++ Java 三者其一 09/15 18:57
ronin728: 推什麼Haskell? 有些人傳教真的很扯,自己害死人不知道 09/15 18:59
ronin728: 雖然我也喜歡Haskell,但是看情況推薦是很難嗎? 09/15 19:01
ronin728: 原po又不是要學FP或PLT... 09/15 19:01
CoNsTaR: 樓上看清楚再講話有很難嗎… 09/15 19:18
ronin728: 好,我重看了推文串,看清楚了,我現在質疑釣魚的可能性 09/15 19:25
druid0214: 一個連榜都上不去的語言在這丟臉 09/16 21:12
OPIV: 樓上這才真的在釣魚吧 XD 09/16 23:24
GTX9487: Sidney大 正解 04/04 10:47