零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖

今天給大家分享一位前輩整理的一個Python web學習路線。這位前輩由於有編程基礎,所以採用了自學Python的方式。學完後主要做後端開發。希望對你有所啓發。

整理的一個 python web 學習路線,這基本就是筆者自學後做後端的學習路線。
創一個小羣,供大家學習交流聊天
如果有對學python方面有什麼疑惑問題的,或者有什麼想說的想聊的大家可以一起交流學習一起進步呀。
也希望大家對學python能夠持之以恆
python愛好羣,
如果你想要學好python最好加入一個組織,這樣大家學習的話就比較方便,還能夠共同交流和分享資料,給你推薦一個學習的組織:快樂學習python組織 可以點擊組織二字,可以直達

零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖

零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖

入門基礎

編程語言: Python

Python入門相對容易又可以幹很多事(網站,運維,數據,爬蟲等),是一門方便的工具語言。

2016年TIOBE排名顯示Python已經名列第四,成爲腳本語言之首。 國外的Youtube,Instagram,Pinterest,Reddit,Dropbox,Disqus, Quora等知名應用一開始都是基於Python構建,國內的豆瓣,知乎,果殼,餓了麼,搜狐等也是Python應用的典型。

這也給了國內Python開發者一陣強心劑,Python的生態環境可以支撐起重量級的 產品。這裏不想挑起語言之爭,php,nodejs,java,ruby等都有豐富的生態環境。

不過目前來看,技術選型用Python在招聘、學習、培訓、敏捷開發等方面還是一個比較折中的選擇(主要在於人,而不是語言)。 python,ruby之類的動態語言優勢在於其生產力,你能在極短時間內就搭建出原型從而贏得產品競爭。 推薦一下幾本個人認爲比較好的Python書籍:

零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖
•《python-guide》 requests作者寫的guide,偏向工程方面

•《use python》 use python

•《A Byte of Python》 一百多頁的小書,可以快速熟悉Python語言。

•《Python核心編程》 比較全面的Python書籍,介紹了Python語言的方方面面。

•《Dive Into Python》 一本免費的開源書

•《Fluent Python》 Python進階的好書,沒有之一,涉及了很多Python高級主題和實現特性。

•《Python3 Cookbook》 Python進階讀物,彙集了很多技巧。

•《Python高級編程》 豆瓣工程師董偉明先生寫的python高級編程 ppt

當然還有Python的官方文檔作爲參考,不過有些文檔比較晦澀,還是推薦書籍入門。網上目前也可以搜到很多免費的電子書。 如果有時間可以看看國內廖雪峯寫的Python教程,簡單易懂,就是跳躍有點大。

計算機網絡

對於應用開發者來說大部分時間可能不太會接觸特別底層的問題,但是瞭解網絡的運行原理還是必要的。網上有個面試題 從輸入URL 到頁面加載完成的過程中都發生了什麼事情? 如果對其中大部分的概念都瞭解就算是入門了。網絡相關書籍可以隨便找一本看看。Http協議對於web開發者來說比較重要,需要深入瞭解。推薦書籍:

• 《圖解Http》 一本小白入門Http協議的好書,有大量圖片示例。

• 《Http權威指南》 Http協議最權威的講解,大部頭著作,可以看看最基礎的部分。

• 《網絡爬蟲教程》 非常不錯的爬蟲教程。感謝原作者,其實感覺這種把學習的內容總結成小書的方式很好。

• 《Python3 網絡爬蟲實戰》

Linux系統

大部分Python應用都是跑在Linux服務器上的,大部分開源服務器軟件使用的也是linux系統,即使日常工作不使用linux,一些基本的linux命令也要了解。 比如常用的文件操作,目錄操作,進程操作等。你可以使用類unix系統mac或者linux版本ubuntu作爲學習環境。 推薦:

•《Linux工具快速教程》

•《CONQUERING THE COMMAND LINE》 掌握這上面的命令基本就可以滿足日常需求了。

•《鳥哥的Linux私房菜.基礎學習篇》 淺顯易懂,入門Linux命令的好書。

數據庫

現在網站業務後端用得比較多的有三種類型的數據庫,關係型數據庫(mysql等),文檔型數據庫(mongodb等),和內存型數據庫(redis等)。三種數據庫各有優勢和特色,後端程序員需要了解下不同類型數據庫的使用方法和應用場景,靈活應用到後端代碼中。關於各種數據庫網上已經有不少資料,讀者可以自行搜索學習,比較重要的是 mysql 和 redis。

零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖

python相關庫的使用

python一大優勢在於數量豐富的庫,靈活使用各種python庫能幫助我們快速做出產品。作爲web開發者,你需要了解常用python庫和框架的使用,比如django/flask/tornado/sqlalchemy/requests/pandas等。

版本控制

目前最流行的應該就是git了。版本控制工具是多人協作必不可少的工具,入門的程序員需要掌握基本的git命令,可以把github作爲個人練習的工具。

• 《語義化版本控制》

• 《Pro Git》

Web 服務器

Nginx 目前很流行,使用比較廣泛,推薦學習和使用。熟悉 LNMP 架構(Linux + Nginx + Mysql + Python),目前很多公司採用了都是多語言+微服務架構。

前端知識

基本的 html,css,java 需要有所瞭解。很多後端工程師需要做一些工具或者管理後臺之類的,瞭解前端知識會有幫助。

學習和搜索能力

初學者碰到的大部分技術問題都是可以通過 google 解決的,用好 google/stackoverflow/github 和各種技術論壇、牛人博客等能幫助你瞭解最新的技術。

專業素養

公司做項目不是自己過家家,需要你具備寫文檔,註釋,單元測試,溝通表達、與人協作、處理業務的能力。如果你現在還不瞭解一個正規python項目都有哪些組建構成,請去github克隆一份知名的代碼倉庫,花點時間仔細分析下它的項目結構和源代碼。 比如著名網站reddit代碼已經開源,大部分python實現,可以參考下。

另外很多著名的python庫,比如requests/flask等也可以作爲參考。從筆者短暫的從業經歷來看,大部分自學python的人不怎麼遵守代碼規範(pep8), 不知道或者不重視單元測試(寫個函數print下就覺得OK了),不知道怎麼寫註釋和文檔(docstring聽過嗎?)。所以希望學習python的你能遵守工程實踐,具備良好的職業素養和編碼習慣,推薦閱讀《代碼大全》《編程匠藝》之類的工程相關的書。

•《程序員的職業素養》

零基礎學Python,這是阿里Python8年開發經驗寫給你的學習路線圖

後端技術棧

對於技能需求可以在拉勾上搜一下Python的職位,看看各個公司對Python的要求。或者你可以寫個拉勾網的爬蟲,對數據做一個簡單的統計,筆者當初找工作就是這麼幹的。

另外,真正做項目還需要你熟悉python的各種庫和框架,比如django/flask/tornado/requests/sqlalchemy/unittest/celery等等,掌握了合適的工具才能快速上手做東西,公司恨不得你第一天入職第二天就能寫項目。

所以,在你入了門以後請儘快熟悉python web的技術棧。公司不管你會什麼算法,只在乎你的生產力(有時候技術本身不重要,它的價值在於對業務、用戶、顧客的貢獻)。

推薦一些文章供參考:

• 《全棧增長工程師指南》

• 《web開發路線圖》

• 《後端都要學習什麼?》

• 《PYTHON招聘需求與技能體系》

• 《PYTHON後端相關技術/工具棧》

自學坑多,如果希望快速入門,還是老師帶領最靠譜!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章