1. 程式人生 > >為什麼 Django 能持續統治 Python 開發世界

為什麼 Django 能持續統治 Python 開發世界

對於 Python 開發者來說,web 開發框架真可謂玲琅滿目。然而 Django , 毋庸置疑的成為最受青睞的 web 框架。通過本篇部落格,我來為大家講解下為什麼相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 這些流行的 Python web 框架,Python 開發者更傾向於選擇 Django。

再大肆宣揚Django之前,讓我們簡單瞭解一下web框架

Web框架是一個程式碼庫,使開發人員更容易構建動態網站、Web應用程式和Web服務。 眾所周知的是,每個網站都有一些通用的功能(如處理會話,資料驗證等等),一些您每次建立網站時都需要編寫的功能。 這使開發任務平淡乏味。 然而,使用Web框架可以讓您每次建立網站都需要重新編寫通用功能程式碼的困境結束,從而實現更快的開發。 簡而言之,Web框架可以簡化Web開發。

如果您想深入瞭解Web框架及其優點,請點選此處

為什麼Django是Python開發者的最佳選擇

Django是一個Python編寫的,高階的,MVC風格的開源庫。 Django也被稱為“完美主義者的最終框架”,它最初是為新聞網站設計的,因為它允許開發人員編寫資料庫驅動的Web應用程式,而無需從頭開始編碼。

除了更快完成常見的Web開發任務,Django還可以保持設計乾淨且實用。 Django是Python Web開發新人的最佳選擇,因為官方文件和教程是幾個(同類)軟體開發框架中最好的。

技術市場充斥著一系列網路框架,但Django在最受歡迎的伺服器端Web框架裡處於頂峰位置。設計Django背後的座右銘很簡單:避免重複。 Django是用Python編寫的,因此其減少了太多中間層程式碼並突出提高了效率。Django可以支援雲平臺,使其成為Web開發中更受歡迎的選擇。

Django主要特點

  • Django“自備軍需”(Batteries-Included)

Django基於“自備軍需”的理念,您不必使用單獨的庫來實現常見功能,例如身份驗證URL路由模板系統物件關係對映器(ORM)資料庫模型遷移。 如果您正在使用或曾經用過Flask,您一定注意到了它需要呼叫其他庫,如Flask-Login來執行使用者身份驗證。 Django不是這樣。

  • 自由的API

使用Django,很容易根據您的模型生成Python API。 只需一個簡單的命令,不需要額外的編碼就足以開始生成API了。

  • 獨特的管理頁面

即使在網站完全構建之前,您也可以從外部貢獻者處獲取有關資訊。 這就是Django的力量。 該框架使您能夠快速輕鬆地從應用模型生成管理站點。

  • 程式碼設計

與大多數 Web 框架相反,Django 通過使用稱為 app 的東西,更容易地將新功能新增到產品中。 因此,開發者可以感受到 Django 鼓勵大家編寫模組化的程式碼。

  • Django對ORM的完善支援

Django的物件關係對映 (ORM) 對資料庫進行了完善的支援。所以,它用於查詢資料庫所需的資料時,沒有處理結構化查詢語言(SQL)的麻煩。 與許多通過SQL直接在資料庫上工作的Python框架不同,Django開發人員有一個獨特的選擇來操縱相應的Python的Model物件。 Django對於PostgreSQL,MySQL,SQLite和Oracle等資料庫都能做到開箱即用。

  • 強大的內建模板系統 

基於繼承系統,Django 的模板允許開發人員通過非常少量的前端程式碼構建整個動態網站。這得益於使用其他上下文特定元素替換模板的某些元素的選項。 想象一下,你知道你網站的每個頁面都會有一個頁首和一個頁尾。 現在,您首先需要在網站的基本模板中編寫程式碼。 然後,您可以從應用程式的其他部分動態地更改這兩個內容之間的元件。

  • 簡單可讀的網址

很難正確閱讀在PHP os ASP中開發的URL? 使用 Django,您可以建立簡單易讀的 URL,這對人和搜尋引擎都有好處。 您也可以使用其他框架建立可讀 URL,但沒有一個與 Django 一樣容易進行 URL 構造。

快速容易的建立RSS和ATOM feeds

使用 Django,你可以通過建立一個簡單的Python類來快速建立 RSS 和 ATOM feeds。

在資料庫中自動建立表

如果你的資料庫中缺失了某一個表,你可以通過執行 Django 的遷移命令來自動建立它。

容易的資料遷移

資料遷移是 Django 中最有用的功能之一。通過使用 Django 的遷移方法,你可以在短時間內改變一個數據庫模式。同樣也容易就能跟蹤你的資料庫模式和相關的改變。為資料遷移所做的命名能夠幫助你進行版本控制,還有很多選項可以用來合併版本和進行修改。

安全性

Django非常安全,該框架預設情況下可以防止 XSS 攻擊、CSRF 攻擊,SQL 語句注入、點選劫持、使用者管理、cookies、郵件標頭注入、密碼攻擊、目錄遍歷攻擊等等。

Django有一個非常活躍的社群,有80,000個StackOverflow問題和數不清的部落格來自開發人員和高階使用者。 有一些流行網站使用Django,包括 Bitbucket, Pinterest, Instagram, 以及 The Onion。 Django的人氣不斷飆升,可能仍然是Python開發人員最受歡迎的選擇。

您之前的專案是否用過Django? 你真的認為Django是Python開發人員最好的框架嗎? 一如既往,您的意見對於所有讀者都至關重要,請在下面的評論欄中分享您的看法。

相關推薦

為什麼 Django 持續統治 Python 開發世界

對於 Python 開發者來說,web 開發框架真可謂玲琅滿目。然而 Django , 毋庸置疑的成為最受青睞的 web 框架。通過本篇部落格,我來為大家講解下為什麼相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 這些流行的 Python web 框架

為什麼Django框架持續統治Python開發世界

Python開發人員呀...有大量的框架可供選擇來用於他們的Web專案...不過,現在Django毫無疑問已成為世界上Python開發人員中最流行的Web框架。本w將來談談Python開發人員為什麼喜歡Django而不是其他流行的Python Web框架,如Flask,Pyramid,Tornado

為什麼 Django 框架持續統治Python 開發世界

Python 開發人員呀...有大量的框架可供選擇來用於他們的 Web 專案...不過,現在 Django 毫無疑問已成為世界上 Python 開發人員中最流行的 Web 框架。本文將來談談 Python 開發人員為什麼喜歡 Django 而不是其他流行的 Python Web 框架,如 Flask

Python開發環境(3):使用Eclipse+PyDev插件創建Django項目

ffffff postgresq 項目上線 右鍵 ont pat iat ngs ora OS:Windows 10家庭中文版,Python:3.6,Eclipse:Oxygen.1a Release (4.7.1a), PyDev:6.3.2,Django:2.0.3

25歲轉行學習Python開發,到底成功,看看這兩個故事

在那 這就是 輔助 hand 但是 round cap alt 開始 先分享兩個真實的案例:故事一:我父親當年是修摩托車的,一個月只有2000多塊錢的收入,他當時學Python是35-36歲左右,在某鳥學了兩年的時間,那個時候根本還沒有四個月速成這個說法。現在我父親做Pyt

開源項目推薦 Databot: Python高性數據驅動開發框架--爬蟲案例

app out pid pan bre 有著 一個 由於 ide 多年一直從事數據相關工作。對數據開發存在的各種問題深有體會。數據處理工作主要有: 爬蟲,ETL,機器學習。開發過程是構建數據處理的管道Pipeline的過程. 將各種模塊拼接起來。總結步驟有:獲取數據,轉化

Python開發【第二十一篇】:Web框架之Django【基礎】

name line 控制 creat js等 nec serve pan xiaohua 一、 Django簡介 1.web框架簡介 具體介紹Django之前,必須先介紹WEB框架等概念。 web框架: 別人已經設定好的一個web網站模板,你學習它的規則,然後“填空”或“修

世界合約遊戲平臺開發

能夠 設計 同時 概念 系統開發 投資 擴展性 我們 目的 一世界EOD網上投資理財系統開發找▍李經理181-0262-4100微/電▍。一世界EOD分紅盤理財系統開發、一世界EOD資金盤分紅返利模式開發、一世界EOD理財app線上投資分紅系統開發、一世界EOD理財分紅系統

Python開發好學嗎?學會嗎?

經常聽到有人問: Python開發好學嗎?能學會嗎?個人意見是如果你的能力足夠好,那麼你就到公司鍛鍊,比你在培訓學校要學得多,如果你的能力不夠,建議去好的培訓學校強化一下,這樣你的技術會在短時間得到提升。 為什麼這麼說?畢竟講師都是經驗豐富,技術老道的,他們會把你的技術串得比較透徹。當然了,他們

python開發電影查詢系統(二)—Django展示

上篇部落格講了python爬取電影資訊的後臺資料處理,現在我們將Django前端顯示。 如果對Django還不熟的朋友可以先找資料熟悉一下。 這裡我們直接講。 1.安裝好Django後,找到你的工作目錄,建立好一個專案find_film: dja

django+python開發的網站怎麼靜態引用img圖片

html中引用圖片路徑:    <p><img src="/site_media/abc.gif" mce_src="site_media/abc.gif" ></p> url.py新增配置: urlpatterns = pattern

Django框架電商網站開發流程(Python

一、配置 1 建立專案和應用 配置專案setting.py(應用,templates路徑,資料庫,STATICFILES_DIRS) 配置專案urls.py,namespace起名最好和應用名一樣,不容易混淆 2 配置應用 在每個

python編程(python開發的三種運行模式)【轉】

阻塞 data tail 驗證 目錄 pro 什麽 read bus 轉自:http://blog.csdn.net/feixiaoxing/article/details/53980886 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 目錄(?)[-]

Python開發【模塊】:matplotlib 繪制折線圖

ins inux cnblogs linux linu free logs strong use matplotlib 1、安裝matplotlib ① linux系統 # 安裝matplotlib模塊 $ sudo apt-get install python-ma

windows7 配置 python開發環境

ack get sans mysql sta clas 環境變量 mon 系統 1、安裝python2.7 官網下載,安裝,配置環境變量 path,命令行 執行python 2、easy_install 安裝 win7 64位必須使用ez_setup.py進

Python開發入門Windows下搭建python開發環境

python開發入門 Python是一種高級計算機程序設計語言。舉個例子C語言要寫1000行代碼,Java只需要寫100行,而Python可能只要20行。 Python基本概念 Python(英語發音:/?pa?θ?n/), 是一種面向對象、解釋型計算機程序設計語言,由Guido van R

Python開發【模塊】:torndb

utf rom tor 註意 exceptio man turned password highlight Torndb模塊   概要:torndb是一個輕量級的基於MySQLdb封裝的一個模塊,其是tornado框架的一部分。其項目主頁為:https://github.c

Python開發環境搭建

get python安裝 path 開發環境搭建 .py tar -s org pat 1、去到Python官網下載Python的安裝程序https://www.python.org/ 2、直接運行Python安裝程序python-2.7.13.msi(安裝方法很簡單,直接

Python自動化開發-day01-Python開發基礎2-元組、字典、文件操作

文件 list pri 循環 pop 修改 寫入 replace pda 學習內容: 1. 元組操作 2. 字典操作 3. 文件操作 4. 深淺copy 1. 元組操作: 元組和列表非常相似,只不過元組不能在原處修改(它是不可變的),並且通常寫成圓括號中的一系列項。

Python開發day1--初識Python

log comm rip java代碼 註解 領域 系統設置 https style Python第一天。 Python介紹 Python是一門編程語言,和英語,漢語,法語等世界各個國家使用的語言並無區別,編程語言用於程序員和計算機之間的溝通。 編程語言我們知道有機器語言、