Re: [問題] C語言螞蟻書與計概用書推薦?

看板C_and_CPP (C/C++)作者 (悟道修行者)時間8年前 (2016/09/15 15:33), 8年前編輯推噓4(519)
留言15則, 6人參與, 最新討論串2/2 (看更多)
※ 引述《SkIllen (HDeep Diver?)》之銘言: : 標題: [問題] C語言螞蟻書與計概用書推薦? : 時間: Mon Sep 12 22:37:12 2016 : : 今年淡江資工大一 : : 準備要考轉學考 目標是中字輩的資工 : : 讀書應該會是一本計概搭配一本螞蟻書 : : : -- : ※ 發信站: 批踢踢實業坊(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 論語法漂亮 Mathematica應該也在榜上榜 甚至很多人都覺得 Mathematica 是語法最漂亮的語言 這玩意兒在國外很紅 在中國也有很大的知名度 但在台灣... 匿名函數、高階函數什麼都有 模式匹配比 haskell 強大很多 語法有高度一致性 也可以開平行運算什麼 星際效應裡面的很多宇宙模型運算都用Mathematica跑的 包括很多諾貝爾物理獎得主的研究也都用它跑 Siri 的背後技術 wolframalpha 就是用幾千萬行 Mathematica 寫的 參考: https://www.zhihu.com/question/27834147 https://www.zhihu.com/question/20324243 如果是要做實驗跑數據 不是要寫底層貼近硬體的東西或是寫遊戲 或者要領略語法之美 不是要就業考試修課 真的推Mathematica 學通這些之後 再回來看c/c++ 或許會有更高一點的視野 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.98.35 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1473924835.A.020.html ※ 編輯: alfadick (118.168.98.35), 09/15/2016 15:40:34

09/15 16:23, , 1F
台灣數學運算用MATLAB的比較多吧
09/15 16:23, 1F

09/15 16:42, , 2F
不知道 RPI 出來後,台灣使用 Mathmatica 的人會不會變多
09/15 16:42, 2F

09/15 16:42, , 3F
mathematica強大的是各種內建函數吧,語法很普通啊
09/15 16:42, 3F
非也 非也 語法很猛 就算廢掉一堆內建函數, 只剩最基本的, 語法彈性還是猛 "Everything is an expression." 宗旨跟模式匹配什麼 ※ 編輯: alfadick (118.168.98.35), 09/15/2016 18:00:50

09/15 21:38, , 4F
舉個例?
09/15 21:38, 4F

09/19 17:49, , 5F
以前小玩過,不覺得有什麼特別的
09/19 17:49, 5F

09/19 17:49, , 6F
就是方便把expr堆起來 符號很強 這樣
09/19 17:49, 6F
還有pattern matching那些

09/19 17:50, , 7F
到了iteration也沒什麼明顯差別
09/19 17:50, 7F
差很多, 整個寫法都不是for while那套寫迴圈 Mathematica裡幾乎很少人用For While 你看過 Mathematica 寫 bubble sort 怎麼寫嗎 完全沒有任何明顯的迴圈 是用pattern matching https://reference.wolfram.com/language/example/ImplementTheBubbleSortAlgorithmWithPatternsAndRules.html (對c-coder而言 看起來好像無字天書 事實上學過MMA語法 這行秒懂 也很直觀) 你居然會說到了 iteration 沒什麼差別 代表你對MMA 只有剛入門的知識而已 探討MMA寫程式的專書看都沒看過

09/19 17:51, , 8F
如果說順便領教一下functional programming 那是不錯
09/19 17:51, 8F

09/19 17:51, , 9F
把他吹上天可以免了
09/19 17:51, 9F

09/19 17:52, , 10F
而且這玩意很貴 當土海盜還甘心幫他推廣
09/19 17:52, 10F

09/19 17:52, , 11F
這樣哪裡有更高看不出來 更賊更貪圖小惠是真
09/19 17:52, 11F

09/19 17:53, , 12F
舉wolframalpha更是笑死人 wolfram就mathematica母公司
09/19 17:53, 12F

09/19 17:54, , 13F
母公司用手下的主要開發工具 就跟跑步要用腳一樣正常
09/19 17:54, 13F
對阿 我當然知道... 我意思是說 由於 MMA 語法高階又有彈性 所以實踐像 wolframalpha 那麼複雜的東西變得很方便 ※ 編輯: alfadick (220.141.110.111), 09/20/2016 22:55:01 ※ 編輯: alfadick (220.141.110.111), 09/20/2016 22:55:37

09/22 02:46, , 14F
我是覺得人家問轉學考的東西跑出來安麗很北爛啦
09/22 02:46, 14F
我哪是在回原PO 我是在回提到 haskell 的那一位 因為他提到haskell語法漂亮 我才提到更以語法漂亮聞名的 MMA 的 並且學那個對寫 c/c++ 思想上也有幫助 況且我內文都寫了 「要領略語法之美 不是要就業考試修課 真的推Mathematica」 你沒看到這句嗎? 我句句屬實說 MMA 語法漂亮 你可能沒用過 你不知道 所以本能的覺得哪有那麼誇張 就說我是安麗 但是安麗來向你打廣告 你買了產品 他可以賺到錢 但我向他推薦 我賺得到錢嗎? MMA公司又不是我開的 所以拿安麗類比不恰當 ※ 編輯: alfadick (220.141.110.111), 09/22/2016 23:20:11

03/30 10:03, , 15F
Practical c++ program 台北市霞天599元
03/30 10:03, 15F
文章代碼(AID): #1NsaxZ0W (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1NsaxZ0W (C_and_CPP)