屌絲碼農該走的學習之路

0、基礎數學算法

離散數學,機率論與隨機過程,矩陣,組合數學,圖論什麼的雖然之前都學過,這個必定得找時間看看,不爲其餘,只爲數學 ;-)。數據庫

一、體系結構也操做系統編程

《深刻理解計算機系統》:這本書以前完整地上過 CS61 的課程,因此基本上大體內容都瞭解,不過還應該多看看。設計模式

《UNIX 環境高級編程》:也完整地看過,但還須要溫習一遍。網絡

二、網絡編程併發

《UNIX 網絡編程》:卷1前面幾張看得很詳細,後面感受大部分都在講 API 的使用,因此只當參考書吧,卷2須要再看看,省得到時候忘了。ide

《TCP/IP 詳解》:時間不夠,只看與 TCP/UDP 相關的內容。memcached

《自頂向下方法—計算機網絡》:也是重點複習 TCP 基本原理的內容。工具

三、設計模式和語言性能

《設計模式》:上半年基本上看完整了 23 中設計模式,本身還動手實現了一些比較經常使用的,沒事也應該多看看。

C/C++:平時本身用的最多的語言,《Effective C++》,《More Effective C++》,《Effective STL》等都看了,自我感受良好(固然不排除別人以爲我 C++ 弱),不過不能放鬆,多看看 C++11 的東西,《C++ Concurrency in Action》找工做前必定要看完。

Java:最近半年來實驗室項目一直在用,好想好想找本 Java 虛擬機的書來看看,可是時間不夠用了,唉,Java 併發是須要看的。

Python:本身比較喜歡的一門語言,沒事多看看文檔就好,還有這個網站應該常去看看:http://pymotw.com/2/

Lua:本身喜歡的另外一門語言,小巧可愛,也是多看看文檔,沒事去 www.lua.org 上溜達一下。

Bash:這個嘛,隨時都會用到。。。

四、數據庫

以前完整地過看 leveldb 和 memcached 的源碼,還須要再看一篇,畢竟也有半年沒有看了;MySQL 的體系結構也應該溫習一下,另外 HBase 也用的比較多,《HBase: The Definitive Guide》還須要溫習一下。

五、各類工具

5.1 工具鏈 GCC,Binutils,LLVM/Clang;多看看 GCC 的文檔,以前看得太少了,應該主動去看,而不是遇到問題了再去查。LLVM/Clang 堪稱神奇,以前有那麼一段時間想用 LLVM 作出一個玩具出來,後來也不了了之,仍是那句話,沒事主動看看人家的文檔。

5.2 GDB 調試工具,這麼多年以來用的最多的工具啦,不過除了一些常見的命令能夠熟練使用外,其餘的也不記得了,很差很差。

5.3 性能分析與 Bug 工具 這個嘛,Valgrind,SystemTap,Gperftools 都不錯的,用過,可是。。。沒有機會在大程序下用。。。

5.4 其餘與系統性能相關的工具,這個好多,就不一一列出來了。

六、各類算法

這裏說的算法不只僅包括通常算法課本上面的貪心、分治,動態規劃,還有其餘的課外的一些有意思好玩的算法,必定要多多積累,持續學習!!!

七、其餘

其餘的呢。。。我也暫時尚未想好,無論怎麼說,感受上面的東西就夠我忙的了,再看吧。。。保持學習的熱情纔是最重要的,慢慢積累總有效果,不斷提醒本身,努力作一個終生學習者。

相關文章
相關標籤/搜索