大家好,我是辣條,
今天給大家帶來三萬粉絲三大語言學習路線和資源整理,收藏就對了,
目錄
C語言
學習路線
學習書籍
學習視頻
資源推薦
Java語言
學習路線
學習書籍
學習視頻
資源推薦
Python語言
學習路線
學習書籍
學習視頻
資源推薦
C語言
學習路線
基礎階段
基礎階段入門篇,大家通過學習,應該熟練掌握C語言編程的基礎語法知識,這些語法層面的知識是基礎中的基礎,必須熟練,目標是可以開發一些簡單的控制臺小程式,
知識點
- 初識C語言 / 了解C語言的發展史,搭建C開發環境
- 認識一個簡單的C程式 / 一般都從“Helloworld"這個簡單的C程式開始
- 演算法入門 / 演算法基本概念,簡單程式結構,流程圖等
- 基本資料型別 / 整型,浮點型,字符型
- 運算子與運算式 / 各種運算子以及優先級,運算式和陳述句等
- 簡單輸入輸出函式 / 目前主要是scanf和printf,getchar和putchar
- 選擇、回圈、分支結構 /if while/do while switch
- 陣列 / 一維和二維陣列定義初始化,元素遍歷訪問,陣列相關運算,陣列使用
- 函式編程基礎 / 模塊編程,函式宣告、定義、呼叫
- 指標決議 / 指標初識和理解,指標和陣列關系,指標簡單運算和使用
提高階段
提高篇,大家通過學習,應該形成C語言的基本知識框架,目標是可以開發一些基本的應用程式,并能夠掌握開發綜合應用程式的方法,
知識點
- 指標的深刻理解和使用 / 對指標本質的認識,指標的各種使用場合
- 位運算 / 各種位運算子號應用(注意很對妙用),進制轉換
- 存盤管理 / 作用域和存盤型別等
- 預處理 / 主要是#define和#include
- 字串的處理 / 各種字串處理函式
- 檔案的讀寫操作 / 各種檔案處理函式的使用,大量I/O函式使用
- 函式熟練使用 / 模塊化編程思想和能力
- 常用資料結構 / 現階段主要是表、堆疊和佇列
- 圖形影像的簡單處理 / 能夠利用C處理簡單影像
應用階段
應用篇,大家通過學習,應該具備一定的綜合性應用軟體的開發能力,目標是能夠開發例如圖書管理系統,學生資訊管理系統,貪吃蛇,俄羅斯方塊等專案,
知識點
- 軟體工程基本知識 / 主要是軟體開發流程
- 資料庫知識 / 具備對常用資料庫的增改刪查等基本能力
- 資料結構知識 / 樹、圖,各種演算法優化等
- 程式運維能力 / 代碼除錯和優化
- 工程化思維 / 再次深化模塊化編程的能力
學習書籍
基礎
- 《C語言程式設計:現代方法》(第2版)
- 《深入理解計算機系統》(修訂版或第2版)
- 《C語言程式設計》(第2版)
- 《程式員修煉之道》
內核/驅動
- 《Linux內核設計與實作》(第3版)
- 《Linux設備驅動程式》(第3版)
- 《深入Linux內核架構》
應用
- 《UNIX環境高級編程》
- 《UNIX網路編程》
進階
- 《C陷阱與缺陷》
- 《C專家編程》
- 《ARM嵌入式系統開發:軟體設計與優化》
學習視頻
B站:【C語言】《帶你學C帶你飛》【小甲魚】
翁凱C語言【翁凱】
史上最強最細膩的linux嵌入式C語言學習教程【李慧芹老師】
慕課網:C語言入門
中國大學MOOC:C語言程式員設計
資源推薦
C語言網

該網站有很多C語言相關的教程、資源、博客和練手習題,同時也有很多題庫和比賽,比較實用,
網址:https://www.dotcpp.com
cppreference

cppreference是一個免費網站,上面包含了關于C語言和C++的編程知識、庫函式、以及諸多代碼示例,目前連最新的C++20標準都支持了,
網址:http://zh.cppreference.com
Java語言
學習路線
第一階段、Java基礎
JavaEE的學習內容從Java開發介紹開始,為你入門編程語言掃盲;
什么是程式;
如何配置Java開發環境;
Java編程的程序是怎樣的;
Java有什么物特點;
程式是如何運行的;
接下來是介紹Java編程的基礎語法,共分為10個知識點,我們將學習
變數;
基本資料型別;
進制;
轉義字符;
運算子;
分支陳述句;
回圈陳述句等;
以達到訓練基礎語法和邏輯能力的目的,還有對陣列、面向物件和例外處理等,
第二階段、JavaWeb的學習
Web前端開發基礎和框架;
Servlet和JSP在Web后端的應用;
Web后端開發相關專題;
MVC和分層架構以及專案開發流程;
CASE工具的使用等,
第三階段、 Java框架
框架是程式中另一種存盤資料的方式,比直接使用陣列來存盤更加的靈活,在專案中應用十分廣泛,
框架整合開發(SSH/SSS);
RESTful架構和移動端介面設計;
第三方介面和在線支付功能;
網站安全和Spring Security應用實戰;
復雜用戶互動處理和Spring Web Flow的應用;
MyBatis的應用和SSM整合;
我們將深入研究其中涉及到的資料結構和演算法,對學員的技術深度有了一個質的提升,
第四階段、Java+云資料
億級并發架構演進、
Linux基礎、
搭建tomcat環境
大資料開發
云計算
等高級Java教程,是Java技術的高端知識,其中穿插專案實戰演練,企業真實專案供學員應用學習,進行知識體系的“二次學習”,

學習書籍
1. Head First Java

它是很多程式員的啟蒙書籍,常年霸榜Amazon書籍前十排名,
2. Java8 編程入門官方教程

如果你對編程有所了解,以前有接觸過C++或者C#等語言,覺得第一本書的內容會導致學習進度太拖沓,那這本官方入門教程是不二之選,
3. Java核心技術

這本Java核心技術是程式員的優選指南,看這本書來學習需要一定的基礎知識,對于Java已經不局限與淺薄的概念,涉及面比較廣,深度也可以,
4. Effective Java

Effective Java應該是每個Java程式員必讀的書,書里包含了78條極具實用價值的經驗規則,這些經驗規則涵蓋了大多數開發人員每天所面臨的問題的解決方案,
5. 深入淺出設計模式

這本書就是來教你如何打造編程思維,書中循序漸進的介紹了Java的設計模式和面向物件的設計原理,進階一定要看這本書,
6. Java并發編程實戰

如何利用執行緒來提高并發應用程式的吞吐量,如何識別可并行執行的任務,如何提高單執行緒子系統的回應性,如何確保并發程式執行預期任務,如何提高并發代碼的性能和可伸縮性等內容,是開發者不可缺少的參考資料,
7. 代碼整潔之道

本書提出一種觀念:代碼質量與其整潔度成正比,干凈的代碼,既在質量上較為可靠,也為后期維護、升級奠定了良好基礎,
8. 資料結構與演算法分析(Java語言描述)

本書把演算法分析與最有效率的Java程式的開發有機地結合起來,深入分析每種演算法,并細致講解精心構造程式的方法,
9. Java性能優化權威指南

改善Java程式性能,是一個老生常談的問題,但是擁有這項技術的程式員卻不多,看完這本書可以很大的提升自己的競爭力,
10. Java編程思想

原名Thinking in Java,這本書是目前所有Java書籍中獲獎最多的書籍,已然成為編程界的一本經典,這本書最大的優點就是以通俗易懂及小而直接的示例解釋了一個個晦澀抽象的概念,
學習視頻
B站:Java零基礎教程視頻(適合Java 0基礎,Java初學入門)
【零基礎快速學Java】韓順平零基礎30天學會Java
老杜帶你學Java,Java零基礎,Java入門者必修課程(Jdk13全網最牛Java基礎視頻)
中國大學MOOC:Java程式設計
慕課網:Java入門第三季
資源推薦
Java World
這個網站包含了大量的Java 教程,涉及各種各樣的話題,其中很多文章都寫的很好,并且有圖片、插圖進行說明,

Github
這是程式員通用的一個網站,現在國內很多程式員都喜歡用這個托管平臺,它提供了訂閱、專業討論組、文本渲染、在線代碼編輯器、協作交流、代碼分享等功能,在這里你可以找到很多的開源專案,可以“依葫蘆畫瓢”的性質,模仿其做一款相似的專案,這對于你技術的成長有很大的幫助,而且還可以避免閉門造車式的學習!
Stack overflow
Stack overflow.com可能是編程界中最流行的網站了,是一個與程式相關的IT技術問答網站,用戶可以在網站免費提交問題,瀏覽問題,索引相關內容,在創建主頁的時候使用簡單的HTML ,一部分的程式員學習API或者編程語言,通常依賴于代碼示例 ,stackoverflow就可以提供大量的代碼片段,
Python語言
學習路線
一、Python基礎階段
技能樹:掌握python腳本、python界面編程能力、資料庫、基本爬蟲、多執行緒多行程開發能力,可以勝任基本的python開發作業,

知識點細化:
- 資料的存盤:Python概述、進制以及進制轉換、原碼、反碼、補碼、第一個Python程式、終端讀取與列印等,
- 運算子與運算式:關鍵字和識別符號、算術運算子、python資料型別、賦值運算子、運算子、復合運算子、條件控制陳述句(if..else...)、邏輯運算子等,
- 回圈:回圈陳述句之while、回圈陳述句之for、break與continue陳述句等,
- 基礎資料結構:Number與數學函式操作、String(查找,替換,下標索引、串列(常用)、元組、字典(常用)、set集合、迭代器與生成器(常用)、函式概述等,
- 函式:函式的呼叫、簡單函式的定義、函式的回傳值、傳遞引數、關鍵字引數、默認引數、不定長引數、匿名函式、裝飾器、偏函式、回呼函式、變數的作用域、遞回函式、目錄遍歷、遞回遍歷目錄、堆疊模擬遞回遍歷目錄(深度遍歷)、佇列模擬遞回遍歷目錄(廣度遍歷)等,
- 模塊:模塊概述使用標準庫中的模塊使用自定義模塊name屬性包的概述安裝第三方模塊virtualenv與時間相關模塊,
- 面向物件編程:面向物件思想、類與物件、類的方法與屬性、建構式與解構式、self的使用、重寫__ repr__ 與__str__ 函式、訪問限制等,
- 繼承、封裝、多型 :單繼承的實作、多繼承的實作、函式重寫、人開槍射擊子彈小案例、多型、物件屬性與類屬性、類方法與靜態方法等,
- 面向物件高階:動態添加屬性方法、property、運算子多載、發郵件與發短信等,
- 檔案操作與例外處理:StringIO與BytesIO、檔案的管理操作、檔案讀寫(csv、txt)操作、例外處理等,
- 高階函式與測驗:除錯(列印、斷言、logging、pdb)
- 排列組合與正則表達:破解密碼(排列、組合、排列組合)、正則表達等,
- 網路編程:TCP/IP簡介、TCP編程、UDP編程等,
二、Linux和資料庫階段
技能樹:掌握Linux作業系統管理技術,可以搭建幾乎所有Linux環境服務器,

知識點細化:
- Linux作業系統:常見作業系統、作業系統發展歷史、系統的使用、Linux版本、Linux應用領域、虛擬機與Vmware的安裝、Linux版本與Ubuntu 16.04、配置自己的Linux系統、編程IDE的安裝、apt-get安裝軟體包,
- 檔案系統與用戶管理:目錄訪問、檔案與目錄的管理、檔案的權限、用戶管理,
- 文本操作命令:文本命令、文本編輯器Vi/Vim,
- 網路命令、行程管理與服務配置:網路管理命令、系統目錄、重要系統檔案、設定開機啟動與登陸啟動、IP配置、服務的啟動停止、防火墻配置,
- Shell編程與bash、源檔案編譯:基礎IO操作、流程控制、定義變數與環境變數、腳本傳參、定時任務、定時系統操作,
- 版本控制:Git的安裝與配置、GitHub的注冊與使用、Clone與Fork、Git常用命令、標簽、分支與源、多人協作開發,
- MySQL基本使用:MySQL的安裝、MySQL簡介、MySQL基本命令腳本、MySQL與Python的互動,
- MongoDB的基本使用:MongoDB安裝、MongoDB的基本操作,
- Redis的基本使用:Redis安裝、Redis的基本操作、Redis的資料型別、Redis的備份與恢復,
三、Python web開發
技能樹:掌握Python后端框架,解決前后端Web開發問題,

知識點細化:
- HelloDjango:BS/CS,MVC/MTV、Django請求流程、Admin管理,
- Models:ORM、模型欄位屬性、CRUD、聚合函式,F,Q物件,
- Models&Templates:模型對應關系、模板加載、靜態資源、模板語法,
- Views:路由規則、反向決議、請求與回應、會話技術cookie,token,ses-sion、檔案上傳,
- Advanced:驗證碼、分頁器、類視圖、中間件、日志、快取、信號、Cerlery、用戶權限,用戶角色,
- RESTful:REST概念、HelloREST、資料序列化、請求與回應、視圖,轉換器、關系,超鏈接、認證和權限,

知識點細化:
- HelloFlask:Flask介紹、Flask請求、Flask MTV拆分、Flask-Script,
- Views:Flask Blueprint、路由規則、錯誤處理、請求與回應,
- Templates&Models:靜態資源、模板加載、模板語法、ORM、Flask-SQLAlchemy,
- Modesl:Flask-Migrate、CRUD、模型關系、反向參考,
- Extension:Flask-Cache、Flask-Login、Flask- RESTful、Flask- Bootstrap、Flask-Upload,
- Program:需求分析、專案設計、基礎框架搭建、建模,
四、Python爬蟲階段
技能樹:掌握分布式多執行緒大型爬蟲技術,能開發企業級爬蟲程式,

- 多執行緒原理:同步與異步、串聯與并發、執行緒、開辟一個執行緒、執行緒安全與執行緒鎖、多執行緒佇列,
- 協程:執行緒的局限、協程的定義與原理、協程的實作,
- 爬蟲的概念及相關工具:爬蟲的概念及作用、HTTP協議原理、工具的安裝、使用,
- Python http libs:urllib的使用、示例requests庫的使用、bs4庫的使用、xpath語法,
- 爬蟲實戰:使用requests撰寫-個簡單爬蟲、改造requests爬蟲為多執行緒版、利用redis改造多執行緒版爬蟲至分布式,
- scrapy框架:scrapy安裝、創建專案、創建spider檔案,撰寫parse方法、scrapy子命令、運行scrapy爬蟲程式、命令列傳遞引數、進一步決議二級頁面、parse方法之前傳遞引數、匯出json、Csv格式的資料、scrapy爬蟲的狀態保存、item的定義、item的使用、pipeline的使用、使用pipeline將items存盤至MySQ、Lscrapy整體架構、downloadermiddleware、使用downloadermiddleware實作IP代理池、spidermiddleware、scrapy插件、scrapy-redis,
- 量化交易:自動化交易理論、Python量化交易框架,
五、Python機器學習階段
技能樹:掌握Python資料挖掘分析,入門人工智能,

知識點細化:
- jupyter入門:jupyter軟體安裝、jupyter入門、numpy學習,
- pandas:pandas入門、pandas-Series、pandas資料丟失、pandas索引、pandas資料處理、基于Pandas的人臉識別技術,
- scipy:scipy學習
- matpoltlib:資料可視化的概念、可視化圖表的繪制、影片及互動渲染、資料的合并與分組,
- KNN:臨近演算法、預處理、KNN相關函式,
- 線性回歸與邏輯斯蒂回歸:線性回歸、邏輯斯蒂回歸,
- 決策樹與貝葉斯:貝葉斯學習、決策樹學習,
- SVM與K均值聚類:SVC學習
- Kmeans: Kmeans學習
- 機器學習框架TensorFlow:機器學習、權重分配與優選方案、深度學習、自動化神經網路、AI網路的描述,
- 自然語言處理與社交網路處理:文本資料處理、自然語言處理及NLTK、主題模型、LDA、圖論簡介、網路的操作及資料可視化,
學習書籍
1、《Python編程:從入門到實踐》
本書旨在讓讀者快速上手撰寫真正的程式,本書也適用于對語言有模糊理解并希望在嘗試Python編程之前了解其知識的程式員,在學習本書時,你將學習使用Numpy和matplotlib等庫和工具,并使用資料創建令人驚嘆的可視化效果,你還將了解2D游戲和Web應用程式背后的思想以及如何創建它們,

2、《Head-First Python (2nd edition)》
它將幫助你快速掌握Python編程的基礎知識,并使用內置函式和資料結構,然后,本書將幫助你構建自己的Web應用程式,例外處理,資料爭論和其他概念,

3、《“笨方法”學Python》
本書通過幫助你安裝完整的Python環境開始,接著教你如何撰寫優化的代碼,然后,本書討論了基礎數學,變數,字串,檔案,回圈,程式設計和資料結構等主題,本書非常適合想通過語言的核心來學習Python編程的初學者,

4、《Python程式設計(第3版)》
第三版中最顯著的變化就是幾乎洗掉了所有python eval()庫的使用,并增加了一個討論其缺點的部分,最新版本還使用了新的圖形示例,

5、《像計算機科學家一樣思考Python (第2版)》
作者從最基本的編程概念開始講起,包括語言的語法和語意,而且每個編程概念都有清晰的定義,引領讀者循序漸進地學習變數、運算式、陳述句、函式和資料結構,

6、《A Byte of Python》
這本書首先介紹了這本書是關于什么的,然后介紹Python以及它如何成為編程世界中最強大的語言之一,然后介紹Python概念,并在每個示例的步驟中詳細講解,在閱讀完本書之后,你還需要繼續深入學習Python,

7、《Python Cookbook(第3版)中文版》
這本書包含了大量用Python 3.3測驗過的代碼,本書提供了各種主題的完整代碼,包括Python語言及其用途,以及大量應用程式領域的常見示例,

8、《Python機器學習基礎教程》
在本書中,你將了解使用Python和scikit-learn庫創建豐富的機器學習應用程式所需的步驟,向你介紹機器學習的基本概念和用法,然后再介紹流行的機器學習演算法的優缺點,

9、《流暢的Python》
本書涵蓋了各種概念,包括python資料模型、資料結構、把函式視作物件、面向物件習慣用法、控制流程和元編程,通過這本書,高級Python程式員將了解Python 3以及如何精通該語言版本,

10、《Programming Python》
這本書包含了關于Python的各種應用領域的深入教程,例如gui、Web和系統管理,本書還將討論如何在資料庫、文本處理、前端腳本層、網路等方面使用該語言,


學習視頻
B站:[小甲魚]零基礎入門學習Python
【Python教程】《零基礎入門學習Python》最新版
中國大學MOOC:Python語言程式設計
慕課網:Python3 進階教程 2020全新版
資源推薦
對國內技術社區
CSDN:CSDN - 專業開發者社區必須排第一哈哈
博客園 https://www.cnblogs.com/
掘金 https://juejin.cn/
思否 https://segmentfault.com/
開源中國 https://www.oschina.net/
51CTO https://www.51cto.com/
V2EX https://www.v2ex.com/
開發者頭條 https://toutiao.io/
GitChat https://gitbook.cn/
知乎 知乎 - 有問題,就會有答案
牛客網 https://www.nowcoder.com/ 一個互聯網求職學習交流社區,
國外技術社區
Stack Overflow https://stackoverflow.com/ 全球最活躍的程式員技術問答交流社區,程式員的所有問題都能在上面找到答案,
Medium https://medium.com/
學編程的教程網站
菜鳥教程 https://www.runoob.com/
W3Cschool https://www.w3cschool.cn/
易百教程 https://www.yiibai.com/
并發編程網 https://ifeve.com/
視頻教程網站
B站 https://www.bilibili.com/
慕課網 https://www.imooc.com/
中國大學MOOC https://www.icourse163.org/
開源社區
GitHub https://github.com/ 全球最大開源社區,被戲稱為全球最大同性交友網站,
碼云 https://gitee.com/ 可以看做GitHub的國內版,GitHub雖好,但GitHub服務器在美國,網路方面main一直是個問題,這種情況下,碼云是個不錯的替代者,
面試刷題
LeetCode力扣 https://leetcode-cn.com/ 經典的刷題網站,主要是演算法題,
LintCode https://www.lintcode.com/ 和LeetCode類似
電子書
書堆疊網 https://www.bookstack.cn/
碼農之家 https://www.xz577.com/
接私活賺外塊的網站
豬八戒 https://www.zbj.com/
程式員客堆疊 https://www.proginn.com/
碼市 https://codemart.com/
開源中國眾包平臺 https://zb.oschina.net/
人人開發 http://www.rrkf.com/
大佬的博客/網站
阮一峰:http://www.ruanyifeng.com/home.html 計算機科普博主
陳浩:https://www.coolshell.cn/ 左耳朵耗子
廖雪峰 https://www.liaoxuefeng.com/ Python啟蒙老師,Python,Git系列教程作者
王垠 http://www.yinwang.org/ 每寫一篇文章都能引發爭議的前Google程式員
👇🏻 疑難解答、學習資料、路線導圖可通過搜索下方 👇🏻
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/356794.html
標籤:java
上一篇:凜冬已至,雪花演算法會了嗎?
