作者guest0079 (火辣辣的大姊姊)
看板Soft_Job
標題Re: [討論]推薦精進程式設計能力的書單
時間Wed Jun 27 23:31:37 2007
※ 引述《OnlyRD (傳說中的RD)》之銘言:
: 其實我沒有什麼概念
: 所以想聽聽大家怎麼說...
: 例如[C++] A書-->B書-->C書...
: [JAVA] A書-->B書-->C書...
: [OO] A書-->B書-->C書...
: [OS] A書-->B書-->C書...
: 以此類推...
: 我認真看過的書其實不多
: 所以想推薦卻很心虛
: 有大德可以分享一下書單嗎?
: 希望是真的有熟讀過的..
本人商學背景 寫了兩年Java程式 我的經驗也許會適合沒什麼概念的人
以下基於個人實際的閱讀經驗,僅供初學者參考,原則上就是先看該領域的入門書,再
看經典本
書我都看中文的
Java
0 學生時代看的一本簡單的Java 入門書
1 退伍前看完一本厚厚的入門書 by 陳X安 (初學者乖乖看入門書是很重要的)
2 退伍後兩個月全職寫個萬行的純Java專案,上Java World查資料,自此功力大增
(個人經驗,這比看書還有用n倍)
3 Thinking in Java 中文版 (Java經典)
C\C++相關
1 Ivor Horton寫的那本C (C的入門書)
2 K&R C (C的經典)
3 C++ Primer 3e 中文版 (C++經典, 若能看完且看懂,C++有這本就"幾乎"夠了)
4 Ivor Horton's Visual C++ 6 教學手冊 (C++ & VC++6 二合一)
5 Charles Petzold's Windows Programing (Win32 Api 經典)
6 Jeff Prosise's Windows Programing with MFC (MFC經典之一)
(看得出來第四本開始是朝Windows 視窗程式設計方向學習,且只有第三本是純C++)
OS
1 恐龍本第七版中譯本(這本翻得不好&當時程度不夠花超多時間只看得懂六成)
(聽說鐵人本不錯,且比恐龍本簡單易懂)
計算機組識
1 白算盤2e中文版 (這本好!有一種一切的謎都解開的感覺)
X86組語
1 施銘威的IBM組語實務
2 封面是貝殼 橘黃色那本中譯本
(以上讀心酸的,一直沒有用到的機會 XD 但對電資領域的知識又補上了一塊)
資料結構&演算法
資料結構→ Fundamentals of Data Structures in C
演算法→ Introduction To Algorithms
(有中譯本,但聽說翻不好&版權問題…故可以當做沒中譯文可看)
資料庫
本人只看過一本資料庫概論,一本教Access的書,都是入門書,工作上就覺得夠用了
(資料庫入門容易精通難,只要會SQL的四個基本語法,想混口飯吃夠用了)
網路
網路網頁我不懂,只能推這本概論書Douglas E. Comer's 電腦與網際網路3e中文版
網路這一塊要怎麼由入門到精通,不知是否有版友願意分享,謝謝
物件導向(OO)
自認為沒有看的必要(Java or C++會了 OO自然就懂了)
Design Pattern
GoF 公認就這本了,但沒多少程式經驗的人是看不懂的(沒讀過,但猜測如此)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.31.132.179
推 zkw:此言差矣 OO 不是看看Java or C++就可以懂得東西 06/27 23:39
推 chihyi1980:GoF好歸好..但對DP沒概念的人來說..太辛苦了 orz 06/27 23:40
→ chihyi1980:第一次看GoF那本真的看到我快死掉了..<囧> 06/27 23:41
推 avhacker:看GoF太累,改看"深入淺出設計模式", 蔡學庸譯,大推! 06/27 23:56
推 fishfish0000:我覺得看不夠a~~最好實際操作!! 06/27 23:56
推 guest0079:OO也不是看看OO的書就可以懂的東西 06/27 23:50
推 chihyi1980:這..OO不是看書能懂..也不是像一樓說學Java/C++能懂.. 06/28 00:00
→ chihyi1980:那是要怎麼才能懂..XD 06/28 00:01
→ guest0079:OO真的不是重點 Java寫多自然就懂 C++可能還要久一點 06/27 23:59
推 chihyi1980:我個人的想法是..如果之前沒學過程序導向的語言.. 06/28 00:06
→ chihyi1980:直接學Java/C++..那OO真的是渾然天成.. 06/28 00:06
→ chihyi1980:有學過程式導向的語言..那可能就要自己腦筋轉一下了. 06/28 00:06
推 TonyQ:推 head first design pattern, 不過講的pattern有點少 06/28 03:45
→ TonyQ:入門的話應該OK. 另外物件導向我個人覺得有物件本身的思維 06/28 03:46
→ TonyQ:就算是直接學Java 也不見得接的上OO概念(因為環境關係 06/28 03:47
→ TonyQ:我身邊一堆OO上手的 , 可是對物件導向還是排斥/不能上手) 06/28 03:48
→ TonyQ:上面是要打Java ..--;; 06/28 03:48
推 smartb:學Java可以了解OO? 君不見也有寫1-2千行的Class.. 06/28 08:59
推 yaerse:我想問原PO..這些書都有看過喔..呼..比資訊系的人還認真 06/28 13:21
推 misptt2:幾乎都是資訊系必看的書 06/28 16:51
推 Aurim:覺得新人可以對照design pattern的書來琢磨對OO的體會, 06/28 17:06
→ Aurim:只是現有design pattern書還不夠涵蓋我見過的所有OO pattern 06/28 17:07
推 zkw:OO 不是寫多了就懂啦 大哥 06/28 21:10
→ zkw:程式只是實現OO設計結果的一個 工具 或 方法 06/28 21:11
→ zkw:懂得如何從 需求/問題 變成 設計結果 用哪些obj obj怎麼互動 06/28 21:12
→ zkw:整個分析設計的過程 有很多種有名的方法 懂得運作這些方法 06/28 21:15
→ zkw:或是自己有一套有經驗方法 也可以 這才是真的會OO 06/28 21:16
→ zkw:當然這個能力不是看看OO的書就會的了 06/28 21:17
→ zkw:要捉的住精隨 我的學習經驗只有 多做 多思考 多討論 多參考 06/28 21:18
→ zkw:這些方法而已 coding能力根寫作能力的學習其實也是如此 06/28 21:20
推 zkw:對照DP來學OO 似乎解不了 真正問題領域上的功能性需求 06/28 21:45
→ zkw:也不可能出現涵蓋所有DP的書 太多不同的層次與面向 06/28 21:47
→ zkw:都有一些DP 怎麼可能會出現這一本書 除非是wiki吧 06/28 21:48
推 inses:Java、C++不過是種工具,不是工具熟就會懂OO,OO可以玩很深 06/30 11:44
推 guest0079:程式只是實現OO的工具沒錯 但OO也是為了解決問題的工具 06/30 20:23
推 guest0079:同理 不是OO這個工具熟就會懂怎麼解決問題的 06/30 20:29
推 guest0079:介於程式面與問題面之間的OO 只是一道橋樑 工具罷了 06/30 20:36
→ guest0079:沒必要特意去學OO 能解決問題的方法就是好方法 而透過 06/30 20:36
→ guest0079:Java/C++之OO的精神來寫程式解決問題 才是學OO的方法 06/30 20:41
推 guest0079:zkw說的 要多做多思考多討論…云云 個人覺得沒建設性 06/30 20:48
推 guest0079:另外 OO玩得很深也不過是工具 正如C++玩得很深也是工具 06/30 20:55