硬核干貨 | C++后台開發學習路線


  • 2020秋招提前批
  • C/C++相關開發
  • 拿到騰訊、華為等offer

學習路線及時間安排

推薦時間為4個月,包括四部分:語言,計算機基礎知識,項目基礎知識,項目實踐。

  • 語言
    • 推薦學習1個月
    • 學習方針:視頻為主,書籍為輔。
    • 配套視頻:C語言,C++語言
    • C++ Primer Plus
      • 集中學習該書的1~8章,涉及C語言基礎語法及指針、結構體的使用。
    • C和指針
      • 該書全面深入的剖析了指針的概念與使用,是C語言的進階。
    • C++ Primer
      • 作為C++查詢的工具書,相當於新華詞典,里面會涉及C++的很多技術細節,實際工程中用到的並不會太多。平時遇到問題可以查詢該書,另外也可以作為面試的參考書。
    • STL源碼解析
      • 涉及C++標准模板庫的源碼實現,其中vector、map的實現需要重點關注,比如內存分配,底層數據結構等。
  • 計算機基礎知識
    • 推薦學習1個月
    • 配套視頻:數據結構
    • 數據結構
      • 視頻為主,書籍為輔。看小甲魚的數據結構,該視頻以大話數據結構為藍本講解,了解鏈表,棧,隊列,二叉樹,哈希表,堆等基礎的數據結構。
    • 算法
      • 推薦直接刷題,先臨摹再實戰。推薦書籍劍指offer,左程雲大神的程序員代碼面試指南;刷題網站推薦牛客網。
    • 操作系統
      • 推薦書籍學習,重點看深入理解計算機系統的6,7,9,10章。主要理解線程,進程,虛擬內存及鎖機制。
    • 計算機網絡
      • 推薦書籍學習。主要理解TCP/UDP/HTTP三種協議。其中TCP/UDP以謝希仁老師的計算機網絡為主,HTTP以圖解HTTP協議為主。
    • 設計模式
      • 推薦書籍學習,大話設計模式。設計模式可以放在所有知識的最后進行學習。
  • 項目基礎知識
    • 推薦學習1個月
    • 配套視頻:Linux,數據庫
    • Linux基本命令
      • 該部分主要以看視頻為主,記住常用的即可,其余的在實際使用時即用即搜。
    • Linux系統編程
      • 在Linux下進行編程,會涉及到與系統的交互,內存訪問,需要學習Linux系統API用法。
    • 網絡編程
      • 視頻為主,書籍為輔。書籍先看tcp/ip網絡編程查漏補缺,補齊網絡編程基礎知識,然后看Linux高性能編程。
    • 數據庫
      • 視頻為主,書籍為輔。MySQL和Redis數據庫是當前面試的熱門,書籍先看MySQL必知必會,再看Redis設計與實現。
  • 項目實踐
    • 項目名稱為Linux下C++輕量級Web服務器開發,實現web端用戶注冊,登錄功能,經壓力測試可以實現上萬的並發連接。(測試機器為Intel i7 7700,16G內存)
    • 推薦學習1個月
    • 線程池
      • 涉及線程,鎖機制。使用一個工作隊列完全解除了主線程和工作線程的耦合關系:主線程往工作隊列中插入任務,工作線程通過競爭來取得任務並執行它。
    • HTTP請求與響應
      • 涉及Linux系統編程,網絡編程,TCP和HTTP協議。根據狀態轉移,通過主從狀態機封裝了http連接類。其中,主狀態機在內部調用從狀態機,從狀態機將處理狀態和數據傳給主狀態機。
    • 注冊登錄
      • 涉及少許網頁html知識。實現用戶名和密碼校驗,另外通過html文件設置action實現跳轉。
    • 定時器
      • 涉及Linux系統信號及數據結構的使用。由於非活躍連接占用了連接資源,嚴重影響服務器的性能,通過實現一個服務器定時器,處理這種非活躍連接,釋放連接資源。
    • 數據庫連接池
      • 涉及MySQL數據庫。建立數據庫連接池,通過重復使用這些已經建立的數據庫連接,解決頻繁建立連接的缺點,從而提高系統性能。
    • 同步/異步日志系統
      • 涉及設計模式,自定義阻塞隊列。同步/異步日志系統主要涉及了兩個模塊,一個是日志模塊,一個是阻塞隊列模塊,其中加入阻塞隊列模塊主要是解決異步寫入日志做准備。
    • 壓力測試
      • 閱讀Webbench源碼,對進程加深理解。通過Webbench創建多個進程,每個進程通過HTTP連接訪問服務器,完成壓力測試。

相關資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM