最近很多小朋友都在請(qǐng)教我自學(xué)各種技術(shù)應(yīng)該讀什么書,為了避免各種人每過幾天問我一遍业汰,干脆寫出來伙窃,方便大家一次獲取,終身受益样漆,然后不要騷擾我了为障,哈哈哈。
我自己的讀書習(xí)慣放祟,特別是學(xué)習(xí)計(jì)算機(jī)鳍怨,喜歡讀哪些寫的通俗易懂的書,學(xué)到代碼后面為什么這么做的原因跪妥,只有學(xué)習(xí)到之其所以然才能在以后用到的時(shí)候融會(huì)貫通鞋喇。
推薦書單
Python: Python核心編程
系統(tǒng)學(xué)習(xí)Python,這一本書足矣眉撵,把Python的每個(gè)細(xì)節(jié)都講的很透侦香,每個(gè)例子都非常實(shí)用。
我學(xué)習(xí)完這一本書以后纽疟,再看任何Python庫(kù)的時(shí)候都是翻翻API手冊(cè)罐韩,
Google一下就可以快速學(xué)會(huì)任何Python庫(kù)的用法,并融入到自己的項(xiàng)目中仰挣。
C++: C++完全參考手冊(cè)
我高三看的一本書伴逸,2000多頁(yè)缠沈,大部頭膘壶,全英文,但是寫的非常好洲愤。
這也是我唯一看過的一本C++的書颓芭,只要會(huì)這些語(yǔ)法,找個(gè)C++項(xiàng)目柬赐,
比如Qt/C++寫一個(gè)項(xiàng)目亡问,幾乎就知道C++怎么玩了。
其實(shí)C++還是非常方便的,雖然沒有Python簡(jiǎn)潔州藕,但是表現(xiàn)力和庫(kù)生態(tài)都太強(qiáng)大束世,
不用擔(dān)心性能問題,大多數(shù)討厭C++的人床玻,
其實(shí)是恐懼自己學(xué)不好C++, 放下恐懼毁涉,C++其實(shí)很容易學(xué)習(xí)。
Java: Java編程思想
這本書是在書店讀完的锈死,寫的很不錯(cuò)贫堰,但是當(dāng)時(shí)還在讀高二,所以已經(jīng)記不清當(dāng)初的讀后感了待牵,
模糊印象就是一本寫的非常通俗易懂的書其屏,講的非常細(xì)節(jié)。
Haskell: 1. Real World Haskell
十年前缨该,#haskell IRC頻道偎行,大多數(shù)Haskeller(科學(xué)家,數(shù)學(xué)家)還在迷戀Haskell的數(shù)學(xué)之美的時(shí)候贰拿,
GHC 黑客 Dons Stewart 寫的這本 Real World Haskell 系統(tǒng)型的講解了Haskell應(yīng)用的各個(gè)領(lǐng)域睦优,
從基本語(yǔ)法、函數(shù)式編程壮不、科學(xué)計(jì)算到圖形編程等汗盘,講的一針見血,
而且非常薄询一,學(xué)習(xí)玩了就可以流暢寫程序了隐孽。
當(dāng)然進(jìn)階的知識(shí)還是要去 #haskell IRC頻道請(qǐng)教數(shù)學(xué)家們,哈哈哈健蕊。
Haskell: 2. Learn You a Haskell for Great Good!
好朋友寫的Haskell入門書籍菱阵,大愛這種又會(huì)計(jì)算機(jī)又會(huì)畫漫畫的藝術(shù)家了,
把一個(gè)嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)基因的編程語(yǔ)言講的詼諧幽默
Elisp: GNU Emacs Lisp Reference Manual
十多年前缩功,我用Emacs, 對(duì)Elisp半毛錢不懂晴及,天天就在EmacsWiki抄各種配置,
就像一個(gè)拾荒者嫡锌,每天早上起來逛EmacsWiki, 偶爾碰到高級(jí)Elisp技巧就把我折騰死了虑稼,
然后對(duì)著Emacs破口大罵。
為了不瞎折騰势木,我花了一個(gè)月的時(shí)間讀完這本大部頭蛛倦,遇到不懂的API,
就打開ielm臨時(shí)寫一個(gè)demo函數(shù)驗(yàn)證一下,當(dāng)我讀完以后啦桌,
我發(fā)現(xiàn)99%的Emacs的問題都可以自己調(diào)試和解決溯壶。
如果你花時(shí)間讀完這本Emacs內(nèi)置的寶典,
你也可以像我這樣寫這么多擴(kuò)展: Andy Stewart
Ruby: The Ruby Programming Language
學(xué)習(xí)Ruby的時(shí)候,已經(jīng)會(huì)了幾十門編程語(yǔ)言了且改,手冊(cè)從頭看一遍验烧,不用寫練習(xí)基本就可以學(xué)會(huì)。
因?yàn)楫?dāng)你編程語(yǔ)言學(xué)得足夠多的時(shí)候又跛,不同語(yǔ)言的語(yǔ)法都是相同的噪窘,
只用學(xué)習(xí)不同語(yǔ)言之間的微小區(qū)別就可以了。
以前一直對(duì)Ruby的end語(yǔ)法抱有偏見效扫,但是至從我在Emacs配置了 ruby-end 插件以后倔监,世界都清凈了。
Vala: Vala Tutorial
Vala有C的速度菌仁,Python的簡(jiǎn)潔浩习,語(yǔ)法類似 C Sharp,
基本看完這本手冊(cè)以后,拿著API就可以直接開始寫了济丘。
Vala寫Gtk+是非常爽的谱秽。
正則表達(dá)式: 精通正則表達(dá)式
這是我唯一看過一本帶有 “精通” 名字的書,確實(shí)寫的非常好摹迷,
Yahoo工程師把他平常用到的經(jīng)驗(yàn)都樸實(shí)無華的寫出來疟赊,
基本學(xué)會(huì)這本書講的怎么構(gòu)建正則表達(dá)式的思路,不管是標(biāo)準(zhǔn)的正則表達(dá)式峡碉,
還是Perl, Elisp等其他語(yǔ)言的變種正則近哟,都是觸類旁通的。
代碼質(zhì)量:重構(gòu) 改善既有代碼設(shè)計(jì)
這本書代碼是java寫的鲫寄,但并不掩蓋它作為重構(gòu)第一書的地位吉执。
講解了很多重構(gòu)小技巧,教你只要養(yǎng)成十來個(gè)重構(gòu)小細(xì)節(jié)的好習(xí)慣地来,
不論寫什么編程語(yǔ)言戳玫,局部代碼和整體邏輯都干凈的像藝術(shù)品一般。
這本書的技巧我這十幾年都在踐行未斑,難得的好書咕宿。
X11: Xlib - C Language X Interface
這本書是讀過最枯燥的書籍,但是要從頭做一個(gè)Linux桌面環(huán)境蜡秽,這本書的API是必讀的府阀。
因?yàn)槟愠薵ithub外,根本找不到更多資料來講解X11這個(gè)古老的技術(shù)了载城。
Gtk+: Gtk+ Programming Tutorials
寫的最通俗易懂的Gtk+書籍肌似,學(xué)完這本書,直接看Gtk+ Developer Manual 就可以直接寫程序了
Qt: PyQt5 Totorial
寫的最好的Qt入門教程诉瓦,加上Python的方便性,非常容易系統(tǒng)學(xué)習(xí),
加上學(xué)習(xí)Qt之前已經(jīng)有Gtk+五年編程經(jīng)驗(yàn)睬澡,兩天看完就直接用Qt寫程序了固额。
JQuery: 鋒利的JQuery
國(guó)人寫的書,寫的非常通俗易懂煞聪,每個(gè)API的參數(shù)都是漸進(jìn)式講的斗躏,
舉的例子也很實(shí)用簡(jiǎn)單,基本不用動(dòng)手就會(huì)了昔脯。
Rails: Rails Tutorial
系統(tǒng)的講解了怎么用Rails搭建一個(gè)網(wǎng)站啄糙,雖然很多架構(gòu)設(shè)計(jì)和整體邏輯我是靠Google摸索出來的,
但是這本書確是入門不可或缺的云稚,難度適中隧饼,學(xué)習(xí)完了,你對(duì)構(gòu)建網(wǎng)站有一個(gè)基本的認(rèn)識(shí)了静陈。
SVG: SVG入門教程
雖然是翻譯老外的技術(shù)博客, 卻是深入學(xué)習(xí) SVG 不可多得的教材, 講的通俗易懂.
可以學(xué)到很多 SVG 高級(jí)技巧.
編譯器: Flex & Bison
系統(tǒng)的講解了什么是詞法分析器燕雁、語(yǔ)法分析器
以及怎么寫編譯器的基本流程
這本書特別講究循序漸進(jìn), 細(xì)心的講解每個(gè)API
看完這本書就不會(huì)覺得這兩個(gè)技術(shù)有啥高級(jí)了, 哈哈哈哈
萬能的Google
不是每個(gè)技術(shù)都有很好的書,所以這個(gè)時(shí)候基本上就是Google教你所有的東西鲸拥。
以下技術(shù)基本都是Google教的:
- Golang
- Rust
- Html5/CSS3
- Scheme
- OCaml
- Lua
- Perl
- Linux
- ...
Emacs教會(huì)我自學(xué)
這么多年的自學(xué)經(jīng)歷拐格,我最應(yīng)該感謝的是Emacs, 是這個(gè)世界上最難折騰的軟件,虐我虐到我待她如初戀刑赶,給我莫大的耐心捏浊,我再學(xué)習(xí)其他技術(shù)的時(shí)候才會(huì)覺得得心應(yīng)手。
感謝Emacs讓我接觸到強(qiáng)大而又無私的頂尖黑客們和黑客精神撞叨,每天看著一群天才比我自己還努力的時(shí)候呛伴,自己就更萌生發(fā)奮學(xué)習(xí)的動(dòng)力。
自學(xué)的技巧
耐心谒所、耐心热康、耐心
致Deepin粉絲
關(guān)心我干嘛的deepin粉絲,我現(xiàn)在在寫Rails代碼養(yǎng)家糊口劣领,順便下班折騰我的 EAF, 我現(xiàn)在活的很好姐军,很開心,謝謝大家的關(guān)心尖淘! ;)