1. 程式人生 > >2017計算機系書單推薦(排版更新)

2017計算機系書單推薦(排版更新)

前言

這裡築夢師,是一名正在努力學習的iOS開發工程師,目前致力於全棧方向的學習,希望可以和大家一起交流技術,共同進步,用簡書記錄下自己的學習歷程.

本文閱讀建議
1.一定要辯證的看待本文.
2.本文不允許轉載,因為...因為我要提供網盤給大家..
3.本書單所涉及書籍如有需要,可以評論私信我,**無償提供網盤**,僅供學習交流使用,如有侵權請與我聯絡.
4.因為本人才學會Markdown語法,故將17年書單重新更新排版.
5.如果您有什麼書籍想要推薦,請不吝私信給我,我將更新本文.
6.文中提到的為重點書籍,並不包含網盤中所有書籍.
7.覺得哪裡不妥請在評論留下建議~
8.覺得還行的話就點個小心心鼓勵下我吧~
目錄
1.讀書方法
2.基礎書單
3.清華大學計算機系書單
4.C語言
5.C++
6.Java
7.Python
8.GO
9.計算機網路
10.演算法
11.資料結構
12.程式設計
13.Unix/Linux
14.UML和麵向物件
15.計算機組成/體系結構
16.分散式/架構
17.大資料/HADOOP
18.數學系列
19.Git
20.安卓
21.iOS
22.其他
23.CS系列書單(很詳細)

本文最後有:授人魚不如授人以漁(找書方法)

個人想法

我想成為一名優秀的程式設計師,我雖然不是計算機系的學生,但我不能落後,我要努力成為優秀程式設計師的一員。我覺得每個人都有自己的想法和規劃,一個理智的人會去分辨旁人的風言風語,把善意的話聽進去,使自己成長。同時不受那些自己不上進也看不慣別人學習的人。時刻明確自己的目標,努力做好自己,在程式設計師這條路上,要謙虛要謹慎。話不多說。把我這幾天準備的書單推薦給大家.

讀書方法

讀書方法僅供參考,如果你有好的建議,請不吝評論交流哦.

循序漸進

大家都知道,書籍方面,在各個分類中都有那麼幾本出名的書籍,但是學習成本和時間成本卻很高,需要長時間去閱讀吃透.

又或者說,我們總說資料結構要看,演算法導論也要看,但往往看了50多頁我們就放棄了.

如果你沒有養成看書的習慣,以及自己的看書方法,建議不要一開始就閱讀高難度的書籍,會直接破壞你對看書的興趣.從而失去從書籍中獲取知識的途徑.

這麼說吧,我之前看書也是不得其法,3個月看不了多少頁,而且沒有什麼印象,喜歡咬文嚼字,後來發現,計算機系的書大多是理解為主,多次閱讀進行深度體會,反而會更加得心應手.

而相對程式設計師思想這一類的書,則更加需要體會,擁有自己的理解.

思維拓展

在看書進行學習的時候,一定要邊看邊實踐,實踐的同時,一定要發散性思維,去思考相關的知識.

如果你是剛步入計算機應用,或者程式語言類書籍的學習,可能不會考慮到業務邏輯,以及架構思想等,因為知識面還不夠寬廣.就多想一些基礎問題.不論這個問題多麼的奇怪,一定要去尋找答案,並解決,這樣會更加的印象深刻.

如果你想在學習時擁有成熟的思想,我推薦你從以下幾個方面思考每一個書中遇到的知識點(針對程式語言類書籍)

工作層面:(可以直接百度 你所學的知識加上’開發’或者’工作中’等關鍵詞進行學習)

業務邏輯實現:(生搬硬套不可取,而是如何靈活運用實現成熟的邏輯)

自我應用:(學習新的知識點以後,你可以自己思考應用在什麼地方)

當你使用百度去搜索知識時,別人可能會提到一些你不懂的知識點,不用很深入的再去百度一下.拓寬自己的知識面,使得所有的知識都不再是死的,而是靈活組合的,程式當中都是各自聯絡,成為一個體系的.都是有聯絡的.

三維筆記

什麼是三維筆記呢,也就是我個人的一個學習方法.

自學讀書筆記+學習日誌&視訊學習+成型的輸出筆記.

自學讀書筆記:就是記錄書中的知識點,用自己的理解整理知識點,而並非搬運書中的目錄結構.並會記錄每一個自己會思考到的問題,以及知識拓展.

學習日誌&視訊學習:這裡並不是強制讓你搜羅視訊學習,而是書是出版的,有些知識可能會過時,所以一定要結合實時知識,辯證的去理解每一個知識.學習日誌是為了記錄自己每天干了什麼,不要虛度光陰,使自己可控.

成型的輸出筆記:結合前兩個筆記以後,將自己的筆記整理成可以寫成文章的筆記,輸出倒逼輸入學習法,在輸出文章的同時,自己會自然而然想要完善文章,達到面面俱到,進行學習補充.

基礎書單

1.演算法導論
2.計算機演算法基礎
3.編譯原理
4.作業系統-精髓與設計原理
5.資料庫系統原理
6.離散數學及其應用
7.計算機網路
8.計算機組成原理
9.Essential C++(註釋版)
10.java程式設計教材
11.資料結構
12.線性代數
13.高等數學
14.大學物理學
15.概率論
16.數理統計
17.類比電子技術
18.電路原理
19.Linux伺服器作業系統
20.網路裝置與網路技術

清華大學計算機系12門課程

1.資料結構 嚴蔚敏
2.編譯原理 張素琴
3.內容中心網路體系架構
4.計算機系統結構
5.圖論與代數結構
6.計算機組成與結構
7.80x86組合語言程式設計
8.C語言程式設計
9.多媒體技術基礎
10.資料庫系統概論
11.C++語言程式設計
12.計算機區域網

知乎書單 by ZhiSheng

這份書單可以說是很詳細的涉及到了各個語言的好書,是我在某個問題回答裡看到的。

C語言

《C程式設計語言》
《C語言參考手冊》

C++

《Essential C++》
《C++ Primer》
《深度探索C++物件模型》
《C++程式設計語言》
《Think in C++ C++程式設計思想》

Java

《Java語言規範》
《Java併發程式設計實戰》
《Java核心技術 卷1》
《Java核心技術 卷2》
《 Java程式設計思想》
《Effective Java》
《深入分析Java Web技術內幕》修訂版
《深入理解Java虛擬機器:JVM高階特性與最佳實踐》第二版

Python

《Python學習手冊》
《Python核心程式設計》
《Python網路資料採集》
《Flask Web開發:基於Python的Web應用開》發實戰

GO

《GO併發程式設計實踐》

Network

《計算機網路自頂向下方法》
《計算機網路》
《計算機網路系統方法》
《TCP/IP詳解卷1》
《TCP/IP詳解卷2》
《TCP/IP詳解卷3》

演算法

《演算法導論》
《演算法》

資料結構

《資料結構與演算法分析C語言描述》

程式設計

《程式設計實踐》

Unix/Linux

《The Design Of The Unix Operating System》
《 Unix環境高階程式設計》
《Unix網路程式設計卷1》
《Unix網路程式設計卷2》
《Unix超級工具》
《Unix程式設計環境》
《Unix程式設計藝術》
《鳥哥私房菜——基礎知識篇》
《鳥哥私房菜——伺服器篇》
《Linux核心設計與實現》
《Linux系統程式設計》
《深入理解Linux核心》
《 Linux裝置驅動》

UML和麵向物件

《面向物件分析與設計》
《UML面向物件建模與設計》
《UML使用者指南》
《設計模式》

計算機組成/體系結構

《深入理解計算機系統》
《計算機體系結構量化研究方法》
《計算機組成與設計:硬體/軟體介面》
《計算機組成與嵌入式系統》
《MIPS體系結構透視》

分散式/架構

《分散式系統概念與設計》
《分散式系統原理與範型》
《大型網站技術架構:核心原理與案例分析》
《大型網站系統與Java中介軟體實踐》

大資料/HADOOP

《Hadoop權威指南(中文第2版)》

數學系列

《數學分析新講》
《數學之美》

Git

《Git 權威指南》

安卓

《第一行程式碼 android》
《Android 開發藝術探索》
《安卓群英傳》

iOS

《Objective-C程式設計之道之IOS設計模式解析》
《Objective-C基礎教程(第2版)》

其他

《人月神話》
《編譯原理》
《事務處理》
《組合語言程式設計》
《程式設計師的自我修養—連結、裝載與庫》
《程式碼揭祕—-從c/c++角度探索計算機系統》
《程式設計之美》
《劍指offer》

知乎書單 By 箴光司

這份書單主要是國外CMU大學課程表,是一份國外大學如何進行CS課程學習目錄。從不同的學習方法以及角度,進行進一步的學習。

CMU的課程計算機核心課程

(合計 17學分, 學分已經轉化為成國內的演算法,略有出入)如下:

15-128 Freshman Immigration Course (介紹類,時間很短)

15-122 命令式語言程式設計Principles of Imperative Computation (2.5學分,沒有程式設計基礎的同學)

15-150 函式式語言程式設計Principles of Functional Programming(2.5學分)

15-210 並行/序列資料結構 Parallel and Sequential Data Structures and Algorithms (3學分)

15-213 計算機系統基礎Introduction to Computer Systems (3學分)

15-251 計算機理論基礎Great Theoretical Ideas in Computer Science (3學分)

15-451 演算法分析與設計 Algorithm Design and Analysis (3學分)

B: 一門技術交流課程One Communcations course:

15-221 電腦科學家技術交流Technical Communication for Computer Scientists(2學分,相當於我們的英文寫作課程,也關注口頭表達)

C: 從下面選擇一門演算法課程

15-354 計算離散數學Computational Discrete Mathematics3學分)

15-355 現代計算機代數Modern Computer Algebra2學分)

15-453 形式化語言與自動機Formal Languages, Automata, and Computability2學分)

21-301 組合數學Combinatorics2學分)

21-484 圖理論Graph Theory2學分)

D: 從下面選擇一門應用類課程

05-391 人機互動 Designing Human Centered Software (3學分)

05-431 使用者介面Software Structures for User Interfaces (1.5學分)

10-601 機器學習 Machine Learning (3學分)

11-411 自然語言處理 Natural Language Processing (3學分)

15-313 軟體工程 Foundations of Software Engineering (3學分)

15-322 計算機音樂 Introduction to Computer Music (2學分)

15-323 計算機音樂和資訊處理 Computer Music Systems and Information Processing (2學分)

15-381 人工智慧 Artificial Intelligence: Representation and Problem Solving (2學分)

15-384 機器操作Robotic Manipulation (3學分)

15-385 計算機視覺Computer Vision (2學分)

15-415 資料庫應用Database Applications (3學分)

15-462 計算機影象Computer Graphics (3學分)

E:從下面選擇一門理論類課程

15-312 計算機語言基礎 Foundations of Programming Languages (3學分)

15-317 構造邏輯 Constructive Logic (2學分)

15-414 計算機自動化驗證 Bug Catching: Automated Program Verification and Testing (2學分)

21-300 基本邏輯 Basic Logic (2學分)

80-311 複雜性 Computability and Incompleteness (2學分)

F:從下面選擇一門軟體系統類課程

15-410 作業系統 Operating System Design and Implementation (3學分)

15-411 編譯器 Compiler Design (3學分)

15-418 並行體系結構與程式設計 Parallel Computer Architecture and Programming (3學分)

15-440 分散式系統 Distributed Systems (3學分)

15-441 計算機網路 Computer Networks (3學分)

授人魚不如授人以漁(找書方法)

本人連續4天趴在知乎上,等各大網站上進行搜書。可以說我是一時興起。很多人都說 我搜這麼多書,不會看的。我笑笑,對,我可能真的看不完,但我不會不看。這三份書單的書pdf版相關的,不相關的我都找了,同時結合著百度,知乎,豆瓣等各網站找到各個科目相關知名書籍的pdf。抱歉原英文字沒有幾個,因為我自己英語水平還看不懂外著。

這些書的pdf版可能會涉及到版權問題吧。我三份書單大概找了有16G的pdf書,都找齊了,有需要的可以簡信給我,免費傳閱。

妙,16G的書包含了(三份書單各個知識點各個語言的好書)。但是,作為一個讀者,我只對其中一本書感興趣,我才不要你的16G,一點用都沒,除了裝能幹嗎?說的好!如果你想自己搜,沒問題。魚竿給你。

搜尋利器

首先推薦無私奉獻的指令碼之家,這個站長呢唯一的要求可能就是,有的書需要你去關注公眾號要百度盤密碼,免費的。

第二個就是 會報有危險的網盤網站,雖然我也不知道有什麼危險,你們如果知道告訴我,我把這個刪了

第三個就是 不知道在哪裡淘的搜尋網站 直接下載 用來下原英文字很不錯哦

第四個就是 很有名的CSDN 資源搜尋,我還買了個年會,為了下載舒服點。

在這裡點名三本書:《自然語言簡明教程》《深入理解機器學習 原理及演算法》《資料庫系統設計實現與管理》這三本書在網上的pdf資源我沒有找到,儘管我動用了谷歌什麼的,都只能找到加密的。然後。。然後我買了。如果有需要這三本書的話,你就別買了,我給你。

感謝這兩位以及各位大牛在網路上提供的答案,使我找到了這些書。

結束語

如果您對這篇文章有什麼意見或者建議,請評論與我討論.
如果您覺得還不錯的話~可以點個喜歡鼓勵我哦.
如果您想和我一起學習,請毫不吝嗇的私信我吧~
介個是我的個人部落格,歡迎參觀哦~