請推薦 編程書籍 結合各位自己的實際?

想要提升下自己的編程能力:

希望推薦一下 以下方面的書籍

1 演算法和數據結構方面

2 網路編程

3 linux os方面

4 設計模式

5 網路協議 (HTTP and TCP/IP)

2015年7月2日 更新一下信息

6 系統架構

7 mysql資料庫方面的

8.虛位以待


我來推薦linux方面的吧:(主要是內核和驅動方面)

1.國外的:

《深入理解linux內核》

《linux內核設計與實現》

《linux設備驅動程序》

【以上三本是經典】

《精通linux設備驅動程序開發》【宋寶華譯】

2.國內的:

《linux內核完全剖析--基於0.12內核》

《linux內核情景分析》【毛德操】

《linux設備驅動開發詳解》【宋寶華】

《嵌入式linux應用開發完全手冊》【韋東山】


操作系統居然不看APUE...


Linux OS : 操作:鳥哥的Linux私房菜.基礎學習篇(第三版) (豆瓣)

系統理解:Linux內核修鍊之道 (豆瓣)

當然了 要在清楚的理解操作系統,還是得看看計算機專業的操作系統教程。

設計模式 :入門:Head First 設計模式(中文版) (豆瓣)

進階:設計模式 (豆瓣)

網路協議:計算機網路 (豆瓣)

TCP/IP詳解 卷1:協議 (豆瓣)

要學這些,不要僅限與PHP,要知道,知乎社區貌似對PHP沒啥好感,說出來容易被噴。

=====

補充@aseaday大神評論中提到的推薦:

設計模式,我推薦看敏捷開發修鍊之道。

Linux OS推薦兩套,一是從How to make an os from scratch, 一個是Linux程序設計。內核修鍊是偏驅動項的,並不好。

恩 我就原話複製了,題主自己判斷,我剛在網上搜了他說的那幾本書,感覺可以一看,還不錯。


  • 《演算法和數據結構——PHP描述》

  • 《PHP網路編程》

  • 《Linux下的高級PHP開發》

  • 《PHP設計模式》
  • 《用PHP30天自製TCP/IP協議》
  • 《PHP虛位以待》


最近依然在看的:

演算法導論

深入理解計算機系統

編程珠璣


首推CSAPP啊,PHP計算機經典

Computer System: A PHP"s Perspective.


看到有人推薦這本書:

《嵌入式linux應用開發完全手冊》【韋東山】

這個書比較偏操作,不少地方都教了如何做,但沒說明白為什麼這麼做,

個人感覺對沒有基礎的人不是很友好,

但是有基礎的人應該去看《ARM嵌入式系統開發:軟體設計與優化》


php沒什麼不好,只是知乎大神都很鄙視PHP,嫌他入門簡單,容易挖坑,學習PHP,還是建議操作系統,網路,設計模式都連起來學,PHP看一本書就夠了,《php和MySQL Web開發》。


兩個基礎書單,推薦給大一新生吧。

演算法和數據結構

  • 數據結構和演算法分析:C語言描述

  • 演算法:C語言實現
  • 演算法 第四版
  • 演算法導論
  • 演算法精解:C語言描述
  • 演算法競賽入門經典
  • 演算法設計與分析基礎
  • 演算法引論——一種創造性方法

UNIX/Linux

  • 鳥哥的Linux私房菜:基礎學習篇
  • 鳥哥的Linux私房菜:伺服器架設篇
  • UNIX/Linux編程實踐教程
  • UNIX環境高級編程
  • UNIX網路編程
  • Linux/UNIX系統編程手冊
  • 深入理解Linux內核


《TAOCP》比爾蓋茨說,看完TAOCP就來微軟上班。

對於程序員來說,要有自己想要達到的水準,去選擇自己要學習的材料。

選擇知乎里的各位根據自身推薦的,除非你覺得能像知乎里的大神一樣就很可以了。


操作系統底層應用 推薦 linux programming interface 中文版兩大本 個人感覺勝過apue 一個是貼近linux 另外涉及介面也比較新 內核隨大流推薦一個ulk 如果是科班出身則不推薦深入理解計算機系統

綜合 人工智慧編程范型 novig的 基於common lisp 是我見過的最好的從入門到精通系列

erlang作者寫的erlang編程 中文版不錯的 也同樣適用於網路編程 基本功方面推薦協議詳解卷一 更底層的沒有推薦 倒是可以試試zq之類 看官方文檔即可

軟文推薦 系統化思維導論

數據結構和演算法 北航尹寶林的c程序設計思想 維斯的有多個版本 最後留下一本挑戰程序設計競賽還有自己的

設計模式 狹義上沒有推薦尤其被用java的公司的開口閉口這玩意的粘人玩壞了 建議入手重構 關鍵內涵的思想 還有用什麼語言就要像 別四不像就不好看了


推薦閱讀:

為什麼 Linux 內核中不經常使用 typedef?
如何在 Linux 系統上使用印象筆記 Evernote?
不要雙系統,不要虛擬機,win7系如何換linux系?
向Linux內核提交代碼是否需要很高的水平?

TAG:PHP | Linux | 計算機網路 | 演算法與數據結構 | 編程書籍 |