從嵌入式到互聯(lián)網(wǎng)-非典型程序員的個(gè)人書單

從嵌入式到互聯(lián)網(wǎng)

我是06年進(jìn)的大學(xué),從大二的時(shí)候參加電子設(shè)計(jì),大三的時(shí)候進(jìn)入電子設(shè)計(jì)的校隊(duì),并參加了09年的全國大學(xué)生電子設(shè)計(jì)競(jìng)賽,但遺憾的是只拿了四川省的一等獎(jiǎng)。整個(gè)排名下來,在我們隊(duì)的前一名就是國二,當(dāng)時(shí)負(fù)責(zé)硬件的隊(duì)友比賽結(jié)束都掉了眼淚。由于學(xué)校的原因,電子設(shè)計(jì)和機(jī)器人是學(xué)校在當(dāng)時(shí)非常重視的競(jìng)賽,選拔和培訓(xùn)機(jī)制也比較完善。在我的記憶里電子設(shè)計(jì)競(jìng)賽學(xué)校從來都是全國的第一名。也正是這樣的原因?qū)е伦约盒纬闪艘粋€(gè)非常錯(cuò)誤的觀念:硬件和嵌入式最難,最牛逼。什么互聯(lián)網(wǎng)之類的無非是做做網(wǎng)頁,連高中生都搞的定,數(shù)學(xué)之類的也就只能用來搞研究了。

13年研究生畢業(yè),期間在微軟亞洲研究院實(shí)習(xí)。畢業(yè)后經(jīng)歷了傳統(tǒng)的嵌入式公司,之后進(jìn)入了國內(nèi)Top3的互聯(lián)網(wǎng)公司,現(xiàn)在回過頭來看10年前的自己,當(dāng)時(shí)的想法是多么的片面和無知。嵌入式的進(jìn)入門檻確實(shí)相對(duì)要高些,但跨過門檻之后,會(huì)發(fā)現(xiàn)技術(shù)不分高低貴賤,只是方向和領(lǐng)域不同罷了?;ヂ?lián)網(wǎng)技術(shù)雖然入門簡(jiǎn)單,但隨著需求和規(guī)模的變化和增長(zhǎng),技術(shù)門檻也會(huì)發(fā)生指數(shù)級(jí)別的上升,而數(shù)學(xué)在其中又扮演著至關(guān)重要的角色。

認(rèn)識(shí)的轉(zhuǎn)變除了工作環(huán)境的變化之外,讀書也發(fā)揮了很大的作用,下面來分享下從嵌入式到互聯(lián)網(wǎng)我這個(gè)非典型程序員的個(gè)人書單(過程中讀過的書遠(yuǎn)不止文中羅列的內(nèi)容,一些質(zhì)量不高的書目在此略過)

書單

匯編

匯編方面除了《微機(jī)原理》和《計(jì)算機(jī)組成原理》的課程學(xué)習(xí)外,自己也單獨(dú)買過匯編的書籍,但總的來說都收獲不大印象也不深刻。真正對(duì)匯編有深刻的理解是在實(shí)際的工作中。工作需要在一個(gè)沒有MMU的控制器上實(shí)現(xiàn)Bios、Bootloader、App三個(gè)獨(dú)立的運(yùn)行空間,當(dāng)時(shí)的解決方案是手動(dòng)編寫兩級(jí)中斷向量表。自此之后對(duì)匯編不再有恐懼的感覺。所以,很多時(shí)候?qū)嵺`是最好的學(xué)習(xí)方法。

C語言

C語言方面只使用了譚浩強(qiáng)的那本《C程序設(shè)計(jì)》。雖然這本書在網(wǎng)上被吐槽的很厲害,但因?yàn)楫?dāng)時(shí)自己年少無知,加上時(shí)間寬裕,整本書看了三四遍,同時(shí),書上的例子也都自己手動(dòng)敲過一遍(高中基本沒接觸過電腦,打字都要對(duì)著鍵盤邊看邊打,所以,測(cè)試?yán)泳彤?dāng)做練習(xí)打字了),所以,整體下來這本書也基本夠用。

C++

《C++ Primer Plus》

《Effective C++》

《C++ 標(biāo)準(zhǔn)程序庫》

Java

《Java核心技術(shù)》

《Effective Java》

《深入理解Java虛擬機(jī)》

Python

《Python基礎(chǔ)教程》(當(dāng)“字典”使用吧)

HMTL5

《HTML5權(quán)威指南》(當(dāng)“字典”使用吧)

設(shè)計(jì)模式

《大話設(shè)計(jì)模式》

《重構(gòu)》

編譯鏈接

《編譯原理》(龍書)

《程序員自我修養(yǎng)-鏈接、裝載與庫》(正和這本書的名字一樣,我覺得每個(gè)程序員都應(yīng)該讀一下)

操作系統(tǒng)

《自己動(dòng)手寫操作系統(tǒng)》

《嵌入式實(shí)時(shí)操作系統(tǒng) ucOS II》

《無線傳感器網(wǎng)絡(luò)操作系統(tǒng) TinyOS》(內(nèi)容基本是官方文檔的摘抄,但國內(nèi)關(guān)于TinyOS的中文資料確實(shí)不多)

計(jì)算機(jī)網(wǎng)絡(luò)

《圖解HTTP》

Linux

《鳥哥的私房菜》

《嵌入式Linux應(yīng)用開發(fā)完全手冊(cè)》(書名感覺有些low,但韋東山的作品確實(shí)經(jīng)典,尤其是他的視頻)

《Linux內(nèi)核完全剖析》(通過這本書才真正理解了實(shí)模式和保護(hù)模式、段頁式管理、內(nèi)核態(tài)和用戶的切換實(shí)現(xiàn),而不是停留在枯燥的概念上)

《Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)》

《Linux內(nèi)核源代碼情景分析》

《Unix環(huán)境高級(jí)編程》

Android

《瘋狂Android講義》(入門經(jīng)典)

《Android開發(fā)藝術(shù)探索》(估計(jì)現(xiàn)在變成面試寶典了)

《Android群英傳》

《Android框架揭秘》(這本書比較老,但對(duì)于開始理解Android的系統(tǒng)框架還是挺有幫助的)

《深入理解Android內(nèi)核設(shè)計(jì)思想》

《Android系統(tǒng)源代碼情景分析》(可能功力不夠,一直都讀不動(dòng)。感覺更適合作為“字典”來使用)

后臺(tái)服務(wù)

《Java Web整合開發(fā)王者歸來》(Java EE的經(jīng)典之作)

《后臺(tái)開發(fā):核心技術(shù)與應(yīng)用實(shí)踐》(C++后臺(tái))

《自己動(dòng)手寫網(wǎng)絡(luò)爬蟲》(基于Java的)

分布式系統(tǒng)

《大型網(wǎng)站技術(shù)架構(gòu)》

《Hadoop權(quán)威指南》

算法與數(shù)據(jù)結(jié)構(gòu)

《數(shù)據(jù)結(jié)構(gòu)(C語言版)》(對(duì)于常用的數(shù)據(jù)結(jié)構(gòu)都有對(duì)應(yīng)的C語言實(shí)現(xiàn))

《編程之美》

《算法導(dǎo)論》(坦白的將這本書來來回回嘗試閱讀了兩三次,但每次都是讀到一半就讀不下去了,期間還看了MIT的公開課。最終還是覺得這本書當(dāng)做“字典”來使用更合適)

《進(jìn)軍硅谷》(內(nèi)容基本都是LeetCode的原題,可以先刷題再看書)

機(jī)器學(xué)習(xí)

《機(jī)器學(xué)習(xí)》(周志華)

《機(jī)器學(xué)習(xí)實(shí)戰(zhàn)》(基于python的基礎(chǔ)實(shí)現(xiàn))

《Python機(jī)器學(xué)習(xí)及實(shí)踐:從零開始通往Kaggle競(jìng)賽之路》(基于Python庫實(shí)現(xiàn))

《統(tǒng)計(jì)自然語言處理》(內(nèi)容嚴(yán)謹(jǐn)、全面)

《TensorFlow Machine Learning Cookbook》(Tensorflow入門超棒的資料,但目前好像只有英文版)

《集體智慧編程》(Simons大神推薦的圖書)

其他

《這就是搜索引擎》

《浪潮之巔》

《數(shù)學(xué)之美》

《沸騰15年》(互聯(lián)網(wǎng)的編年史風(fēng)格跟吳曉波的《激蕩三十年》很像)

《淘寶技術(shù)這十年》

書單可能有遺漏,后面會(huì)慢慢再補(bǔ)充完整。

個(gè)人博客和Github

博客:caiquanliu.github.io

github:github.com/CaiquanLiu

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,351評(píng)論 25 708
  • 本文把程序員所需掌握的關(guān)鍵知識(shí)總結(jié)為三大類19個(gè)關(guān)鍵概念,然后給出了掌握每個(gè)關(guān)鍵概念所需的入門書籍,必讀書籍,以及...
    dle_oxio閱讀 11,403評(píng)論 6 244
  • 姓名:吳兆陽 學(xué)號(hào):14020199009 轉(zhuǎn)自韋東山 嵌牛導(dǎo)讀:對(duì)嵌入式初學(xué)者,沒有足夠的視野選擇一個(gè)合適投入方...
    吳兆陽閱讀 2,522評(píng)論 0 4
  • 三年又三年,人生能有幾個(gè)三年,六年的光陰轉(zhuǎn)瞬即逝;得失之間,青春不負(fù),算是給自己一個(gè)交代。丁酉年叁月序…… ...
    君三笑閱讀 240評(píng)論 0 0
  • 攔斷愁云不知苦,續(xù)寫相思亦是福 奔走天涯皆是毒,覓得鄉(xiāng)音其歸途
    藍(lán)色汪星人閱讀 190評(píng)論 0 3

友情鏈接更多精彩內(nèi)容