精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
計算機必看經典書籍(含下載方式)
作為一個有理想的程序員,必讀的書都有哪些?

很多人給學弟學妹們推薦圖書時,一上來就是各種大部頭的經典書籍,有些書確實是非常經典,但是能不能讓人堅持看下去是一回事,就像有些道理人人都懂,但是能踐行下去的人沒幾個。在這里也只推薦我覺得比較好的書,寧缺毋濫。

一、算法與數據結構

建議你應該好好準備算法和數據結構,做到常見的算法和數據結構知識點都能熟悉。如果你是應屆生,畢業求職的時候可以輕松拿一些大廠(BAT 等)的 offer,至少不會掛在算法數據結構上面;社招的話,也是非常重要的加分項。一畢業去大廠的好處點擊這里

1. 嚴謹的教材

  • 《數據結構與算法分析:C 語言描述》
  • 《算法導論》

2. 輕松活潑的教材

  • 《大話數據結構》
  • 《編程之美》

《編程之美》是一本特別能鍛煉思維能力的算法書。

嚴謹的教材適合系統學習,輕松活潑的教材適合提高學習興趣、非科班的同學。

3. 適當刷題還是有必要的

  • 《劍指 offer》
  • 《程序員代碼面試指南 IT名企算法與數據結構題目最優解》

二、語言類

1. C語言

無論你做什么開發,個人覺得 C 語言是所有想成為高手最應該熟悉的入門語言。

  • 《C 語言程序設計:現代方法》。

2. C++

當然,如果你想掌握好 C++,《深度探索 C++ 對象模型》是一定要看的。

  • 《深度探索 C++ 對象模型》

介紹 C++ 技術和編程技巧的圖書實在太多了,我這里推薦《提高 C++ 性能的編程技術》一書,這本書中介紹了常見的 C++ 編碼技巧,建議做 C++ 開發的同學把書中說的技巧全部掌握,最關鍵的是這本書非常薄。

  • 《提高 C++ 性能的編程技術》

如果覺得自己設計 C++ 類和接口不優雅,不能很好地劃分模塊,大型項目不知道如何去組織和搭建,推薦下如下兩本書,這兩本書是你成為高手的必讀書籍。

  • 《C++ API 設計》
  • 《大規模C++程序設計》

C++ 比較經典的書籍還有:

  • 《Effective C++》
  • 《More Effective C++》

學習 C++11/14/17:

  • 《深入理解 C++11:C++11 新特性解析與應用》
  • 《深入應用 C++11:代碼優化與工程級應用》
  • 《C++17 完全指南》
  • 《Cpp 17 in Detail》

3. Java

  • 《Java 核心技術 》
  • 《Effective java》
  • 《深入理解 Java 虛擬機》
  • 《Java 并發編程實戰》

三、操作系統

操作系統無論是面試還是自我提高的五大基礎之一,我的建議學習操作系統知識時,不一定要看完所有操作系統書籍,但一定將一些基礎概念(如進程、線程、內存模式等)看懂、理清。

  • Tanenbaum.A.S《現代操作系統》

你如果還有時間強烈推薦看看俞甲子的《程序員的自我修養:鏈接、裝載與》。這本書同時涉及到了 Windows 和 Linux 兩個操作系統平臺,用各種輔助工具剖析了程序從源碼到二進制文件再到裝載到進程地址空間里面的各個細節,甚至連進程地址空間中的堆結構、棧結構也分析得清清楚楚,同時也分析了 C Runtime(CRT)、glibc 這樣的操作系統接口的原理和執行邏輯,是一本實實在在幫你實戰操作系統原理的好書。

  • 《程序員的自我修養:鏈接、裝載與

如果對操作系統內核感興趣,可以閱讀下:

  • 《Linux 內核設計與實現》
  • 《Linux 內核情景分析》
  • 《Windows 內核情景分析》

四、計算機網絡

學習計算機網絡除了掌握網絡基礎知識(比如三次握手和四次揮手),還要熟悉網絡編程。

  • 《計算機網絡:自頂向下方法》

網絡編程方面的實戰書來,我推薦韓國人尹圣雨寫的這本《TCP/IP 網絡編程》,這本書也適合無任何 Socket API 編程經驗的小白,這本書涵蓋從基礎的 Socket API 到高級的 IO 網絡模型,有非常詳細和生動的例子。

  • 《TCP/IP 網絡編程》

等你有了一定的網絡編程以后(熟練使用常見 Socket API),你可以看看游雙的《Linux 高性能服務器編程》,這本書給沒有基礎的人或者基礎不扎實的人的感覺是,尤其是書的前三章,這書怎么這么垃圾,又把網絡理論書上面的東西搬過來湊字數,但是如果你有基礎再按照書上的步驟在機器上實踐一遍,你會發現,真是一本難得的、良心的書,桃李不言下自成蹊吧。如果你掌握了這本書上說的這些知識,你再看陳碩老師的《Linux 多線程服務端編程》或者去看像 libevent 這樣的開源網絡,你會進一步的得到提升。這也是我學習網絡編程的一些經驗和經歷吧。

  • 《Linux 高性能服務器編程》

五、操作系統 API

不管是什么開發,你都是需要基于特定的操作系統的,這里不提 Windows 系統,單單拿 Linux 操作系統來說,既然你選擇做這個方面的開發,你需要熟悉這個操作系統平臺提供的一些常用的 API 函數,網絡通信方面上文已經說過,除了網絡通信還有如操作文件、操作內存、字符串操作、進程線程系列、線程同步系列(如互斥體、條件變量、信號量)、管道等常用的各種API接口函數。這里的意思是,不是要你背誦記憶每一個接口函數的簽名,而是你要知道何時該用哪個接口,如何用,有什么注意事項。

我入門的時候看的是 Robert Love 的《Linux 系統編程》,熟悉這個人的應該知道,Google 的工程師,他也《Linux 內核設計與實現》一書的作者。

  • 《Linux 系統編程》
  • 《Windows 程序設計》第五版

(第六版以后,這個不再是用 Windows Native API 寫 C 程序了,而是轉到 C# 平臺上了),這本書是中國第一代程序的 Windows 啟蒙書籍,你所看到的大多數桌面軟件,如 QQ,的開發者可能都是通過閱讀這本書啟蒙起來的。

  • 《Windows 核心編程》

這本書搞 Windows 開發的一定都知道這本書的分量。

  • 《Windows PE 文件權威指南》

六、匯編與安全工程

如果你熟練掌握匯編,你就比其他人多很多優勢,你會能透徹地知道你寫的每一行 C/C++ 代碼背后的機器指令的效率。無論是做安全工程還是自己技術提升上都是非常不錯的。這里推薦一本王爽老師的《匯編語言(第 3 版)》,這本書不厚,語言通俗易懂,你也不用刻意去記憶,基本上當小說書看一下就能很快看完了。匯編實戰類圖書還有另外一本《老碼識途:從機器碼到框架的系統觀逆向修煉之路》。我個人是非常喜歡這本書的。當年讀這本書的時候,真的有一種“笑看妻子愁何在?漫卷詩書喜欲狂”的感覺。

  • 《匯編語言(第 3 版)》
  • 《老碼識途:從機器碼到框架的系統觀逆向修煉之路》

七、數據

數據需要掌握的基礎知識有:

(1)熟悉基本 SQL 操作 包括增刪改查(insert、delete、update、select語句),排序 order,條件查詢(where 子語句),限制查詢結果數量(LIMIT語句)等

(2)稍微高級一點的 SQL 操作(如 Group by,in,join,left join,多表聯合查詢,別名的使用,select 子語句等)

(3)索引的概念、索引的原理、索引的創建技巧

(4)數據本身的操作,建建表,數據的導入導出

(5)數據用戶權限控制(權限機制)

(6)MySQL的兩種數據引擎的區別

(7)SQL 優化技巧

以上屬于對開發的基本的數據知識要求,你可以找一本相關入門級的數據圖書推薦:

  • 《MySQL技術內幕(第5版)》

高級開發除了以上要求還要熟悉高可用 MySQL、主從同步、讀寫分離、分表分等技術,這些技術的細節一定要清楚,它們是你成為技術專家或者高級架構的必備知識。我們在實際面試時,在討論高可用服務服務方案時,很多面試者也會和我們討論到這些技術,但是不少面試者只知道這些技術的大致思想,細節往往說不清楚,細節不會就意味著你的高可用方案無法落地,企業需要可以落地的方案。

這些技術我首推《高性能 MySQL》這本書,這本書高級開發者一定要通讀的,另外還有 2 本非常好的圖書也推薦一下:一本是《MySQL 排錯指南》,讀完這本書以后,你會對整個“數據世界”充滿了清晰的認識;另外一本是《數據索引設計與優化》,這本書讀起來非常舒服,尤其是對于喜歡算法和數據結構的同學來說。

  • 《高性能 MySQL》
  • 《MySQL 排錯指南》
  • 《數據索引設計與優化》

八、編譯原理與計算機組成原理

  • 《編譯系統透視:圖解編譯原理》
  • 《計算機組成與設計:硬件軟件接口》

八、設計模式

  • 《大話設計模式》

九、代碼規范與風格優化

  • 《重構:改善既有代碼設計》
  • 《程序設計實踐》
  • 《代碼整潔之道》

這兩本書特別推薦學生朋友看一下,能大幅度地提高你實際編碼的技巧和編碼風格。

作為一名過來人的老學長,我碼這么多字,希望想做好開發的學弟學妹們,勿在浮沙筑高臺。如果你現在還是學生,你有大把讀書的機會,一定要珍惜大好讀書時光。工作年限不長的同學,也應該盡快在工作的早些年把基本功打扎實。三十歲以后面臨著工作、家庭等各種問題,你可能再不能心無旁騖地去學習和提升了。所以前期的積累很重要,畢竟選擇技術這條路,提高技術是升職加薪改善生活水平最直接的方法。

書單未完待續,后面會整理得更加完善,更加成體系。

文中提到的所有電子書下載鏈接:

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C/C++學習之路 - 雜文 - DarkMoon
為什么時不時會看到「珍惜生命,遠離 C 」?
你或許不知道現在市場上,C++ 主要是用來做什么的。
讀書筆記之《程序員的自我修養
posix是什么都不知道,還好意思說你懂Linux?
快快參與-說出心目中的5本程序設計經典好書!
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 红河县| 清河县| 晴隆县| 南阳市| 商洛市| 普洱| 淮滨县| 德保县| 宿迁市| 房产| 梧州市| 泰安市| 淳化县| 敖汉旗| 宁夏| 嫩江县| 山阴县| 鄂温| 玉门市| 平昌县| 秭归县| 高邮市| 都安| 武隆县| 赤壁市| 淮安市| 历史| 乐山市| 嵊州市| 珠海市| 肇源县| 西吉县| 大冶市| 行唐县| 惠来县| 长海县| 彭山县| 邳州市| 绥江县| 阜宁县| 兴山县|