為什麼 Django 框架持續統治著 Python 開發世界
Python 開發人員呀...有大量的框架可供選擇來用於他們的 Web 專案...不過,現在 Django 毫無疑問已成為世界上 Python 開發人員中最流行的 Web 框架。本文將來談談 Python 開發人員為什麼喜歡 Django 而不是其他流行的 Python Web 框架,如 Flask,Pyramid,Tornado,Bottle,Diesel,Pecan,Falcon 等等....
在談論 Django 之前,讓我們先簡單瞭解一下什麼是 Web 框架
Web 框架是一個程式碼庫...能讓開發人員更容易構建動態網站,Web 應用程式和Web 服務。眾所周知,每個網站都有一個常用的功能(如處理會話,資料驗證等),每次建立網站時都需要重新編寫這些程式碼。這個過程是非常平淡乏味。然而,使用 Web 框架可以解決您每次建立網站時重新編寫常用功能的尷尬處境,從而實現更快的開發。簡而言之,Web 框架可以簡化 Web 開發過程...
為什麼 Django 是 Python 開發者的最佳 Web 框架
Django 是以 Python 編寫的高階,MVC 風格的開源庫。 Django 也被稱為“完美主義者的最後框架”,它最初是為新聞網站設計的,並且允許開發人員編寫資料庫驅動Web應用程式,因此無需從頭開始編碼。
除了更快完成常見的 Web 開發任務,Django 還能使設計過程乾淨務實。 Django 是新的 Python Web 開發人員的最佳選擇,其官方文件和教程是軟體開發中最好的。
在技術市場充斥著一系列網路框架,但 Django 一直是最受歡迎的伺服器端 Web 框架。設計 Django 最初的原因是:不要重複造輪子。 Django 是用 Python 編寫的,通過最小化編寫程式碼來提高效率,再加上雲平臺的支援,使Django 成為 Web 開發者最受歡迎的選擇。
Django的主要特點
1、Django配有“Batteries-Included"
Django 基於 “Batteries-Included” 的理念,可不必使用單獨的庫來實現常見功能,例如身份驗證,URL 路由,模板系統,物件關係對映器(ORM)和資料庫模式遷移。如果您正在使用或使用 Flask,您必須注意到它要求一個單獨的庫,如用 Flask-Login 來執行使用者身份驗證,而 Django 不必這樣做。
2、免費 API
使用 Django,可以根據您的模型生成 Python API,不需要額外的編碼就能夠生成 API 了。
3、獨特的管理介面
即使在網站完全構建之前,您也可以從外部貢獻者的網站上獲取有關資訊,這就是 Django 的優點。該框架使您能夠快速輕鬆地從應用程式的模型中建立一個管理站點。
4、程式碼佈局
與大多數 Web 框架相反,Django 通過使用稱為 application 的東西,更容易地將新功能插入到產品中。因此,開發人員一直被鼓勵編寫自包含的程式碼。
5、Django 的 ORM 專注於資料庫
Django 的物件關係對映器(ORM)負責處理資料庫,所以沒有處理結構化查詢語言(SQL)那樣的麻煩,它主要用於查詢資料庫所需的資料。與許多通過SQL 直接在資料庫上工作的 Python 框架不同,Django 開發人員有一個獨特的工具來操縱相應的 Python 模型物件。 Django 通過使用 PostgreSQL,MySQL,SQLite 和 Oracle 等關聯式資料庫管理系統來實現開箱即用的功能。
6、強大的內建模板系統
基於繼承系統,Django 的模板允許開發人員從非常少量的前端程式碼構建整個動態網站,通過使用上下文特定元素來替換模板的某些元素選項。想象一下,你知道你網站的每個頁面都會有一個頁首和一個頁尾。現在,您首先需要在網站的基本模板中編寫程式碼。然後,您可以從應用程式的其他部分動態地更改這兩個內容之間的元件。
7、簡單可讀的 URL
一般來說,很難正確閱讀在 PHP os ASP 中開發的 URL。使用 Django,您可以建立簡單易讀的 URL,這對人和搜尋引擎都有好處。您也可以使用其他框架建立可讀 URL,但沒有一個與 Django 一樣容易進行 URL 構造。
8、快速啟動,輕鬆建立 RSS 和 Atom 訂閱源
使用 Django,您可以通過建立一個簡單的 Python 類來快速,輕鬆地建立 RSS和 Atom 訂閱源。
9、自動建立資料庫中的表
如果資料庫中缺少表,可以通過在 Django 中執行 migrate 命令來自動建立表
10、輕鬆的資料庫遷移
Django 最有用的功能之一就是資料庫遷移。使用 Django 的遷移,您可以快速更改資料庫模式,跟蹤您的資料庫模式以及進行相關更改。遷移名稱有助於管理版本控制,並且可以使用多種選項來合併版本並進行修改。
11、安全
Django 是高度安全的。該框架具有針對 XSS 攻擊,CSRF 攻擊,SQL 注入,點選劫持,使用者管理,Cookie,電子郵件標題注入,加密,目錄遍歷等的預設保護。
Django 有一個非常活躍的社群,有 80,000 個 StackOverflow 問題和來自開發人員和高階使用者的許多部落格。一些流行的使用 Django 的網站是 Bitbucket,Pinterest,Instagram 和 Theionion。 Django 將會成為 Python 開發人員最受歡迎的選擇。
原文連結:https://www.oschina.net/translate/why-django-is-the-best-framework-for-python-developers
公告通知
第20期 Python零基礎入門班
51Reboot 第20期 Python 零基礎運維自動化【入門班】
51Reboot Docker & K8S 課程
正在火熱招生中
相關文章
- 為什麼 Django 能持續統治 Python 開發世界DjangoPython
- Python開發中,為什麼Django框架很重要?PythonDjango框架
- Web開發與資料科學家:誰在統治Python世界?Web資料科學Python
- Python & PyCharm & Django 搭建web開發環境(續)PythonPyCharmDjangoWeb開發環境
- 為什麼國內各廠的開放世界遊戲都陸續難產?遊戲
- 為什麼 Django 後臺管理系統那麼“醜”?Django
- HBO解密:他們為什麼要開發VR版《西部世界》解密VR
- python為什麼不適合web開發PythonWeb
- 什麼是前端開發?為什麼要學前端開發?前端
- 為什麼 Python 開發人員應該使用 PipenvPython
- 為什麼要選擇Python進行Web開發?PythonWeb
- 利用Python框架django開發資產管理系統Python框架Django
- 【譯】Vue 3.0 對 Web 開發意味著什麼?VueWeb
- Django框架2005年釋出,統治Python十三年,為何經久不衰直奔而上Django框架Python
- 為什麼這麼多人做網校系統開發?網校系統有什麼優點?
- 什麼是Web開發?如何成為一個Python Web開發人員?WebPython
- Python中Django是什麼?Django框架優點有哪些?PythonDjango框架
- 為什麼說小程式開發要趁早?原來隱藏著這樣的秘密!
- 為什麼開源?curl作者:讓世界變得更美好
- 教學系統開發時為什麼要配置小班課?有什麼優勢?
- 因為什麼你還在北京苟著
- 為什麼開發一款作業系統就那麼難?作業系統
- 為什麼不做開發做運維?Linux為什麼這麼廣泛?運維Linux
- Python為什麼會成為人工智慧開發的首選語言?Python人工智慧
- 為什麼JavaScript也將征服VR世界JavaScriptVR
- Python是什麼?為什麼要掌握python?Python
- 前端為什麼需要模組化開發前端
- Android開發為什麼要用MVP?AndroidMVP
- 為什麼JavaScript需要模組化開發?JavaScript
- 為什麼JavaScript開發如此瘋狂JavaScript
- ios開發 為什麼不用Interface builderiOSUI
- 為什麼尋找快速開發之道
- 為什麼我不再做.NET開發
- Java開發為什麼需要UML (轉)Java
- 為什麼前端開發這麼不穩定?前端
- 我為什麼用Flutter開發-2年開發心得Flutter
- 已知人工智慧不會接管世界,為什麼還要繼續關注它?人工智慧
- 什麼是Python?Python為什麼這麼搶手?Python