按照這個清單,一條一條的學習,事半功倍,很快就能掌握 一共25條,即使很磨蹭,2小時也能搞定一條,25*2=50。只須要50小時就能掌握任意一種web框架html
各種web框架大同小異:現代web開發框架的6大元素,把握主線,就不會迷路python
建議把本文打印到一張A4紙,搞定一條打個勾web
web框架學習列表
- 如何定義 url route
- 如何組織 request handler 函數
- 寫一個最簡單的request handler 函數
- 如何從get/post請求中取出參數
- 如何定義全局url 攔截函數
- 如何獲取/修改/存儲 cookie,session數據
- 如何修改/輸出 http header 數據
- 服務器部署能夠參考 python web 程序的9種部署方式
- 如何配置開發環境
- 如何配置靜態文件訪問
- 如何維護表結構的變動
- 如何定義/組織/初始化 數據表
- 如何對接orm系統和現有的表結構
- 掌握最基本的add/delete/按字段查詢/count/slice/order by
- 如何直接使用sql 訪問數據庫
- 如何組織/訪問 模板文件的目錄結構
- 如何在模板中嵌入代碼
- 模板是否支持繼承結構
- 模板之間如何include
- 如何自定義模板函數
- 如何經過http get/post 獲取遠程數據
- 如何parse json
- 如何parse xml
- 如何輸出爲 json
- 如何處理狀態碼:404和50x
- 如何處理文件上傳
可選的學習項目
誤區
- 表單驗證輔助函數,不少框架的表單驗證部分實現的特別複雜,初學者徹底不須要,手寫代碼處理就夠用
- ORM中的hasone,manytomany,onetomany關係,概念很複雜,其實只是多寫/少寫一個查詢字段的關係,學習成本過高,初學者徹底不須要理會,直接跳過
現代web開發框架六大元素
- url route/map,表面看這個就是一組正則表達式,其實這是web開發框架的核心,它決定了代碼的組織方式
- html 模版子系統
- orm,或者說數據庫訪問層
- form 先後端驗證,表單驗證是整個網站開發過程中最複雜的一步,須要寫手不少代碼
- helper,包括:分頁,cache,session,sitemap,rss,email等支持
- deployment 支持,簡單說,這個框架起碼要內置一個http server,更進一步要支持fastcgi,這樣才能部署到生產環境