1. 程式人生 > >Django - 介紹

Django - 介紹

1. 簡介

Django,發音為[`dʒæŋɡəʊ],是用python語言寫的開源web開發框架,並遵循MVC設計。勞倫斯出版集團為了開發以新聞內容為主的網站,而開發出來了這個框架,於2005年7月在BSD許可證下發布。這個名稱來源於比利時的爵士音樂家DjangoReinhardt,他是一個吉普賽人,主要以演奏吉它為主,還演奏過小提琴等。由於Django在近年來的迅速發展,應用越來越廣泛,被著名IT開發雜誌SDTimes評選為2013SDTimes100,位列"API、庫和框架"分類第6位,被認為是該領域的佼佼者。

Django的主要目的是簡便、快速的開發資料庫驅動的網站。它強調程式碼複用,多個元件可以很方便的以"外掛"形式服務於整個框架,Django有許多功能強大的第三方外掛,你甚至可以很方便的開發出自己的工具包。這使得Django具有很強的可擴充套件性。它還強調快速開發和DRY(DoNotRepeatYourself)原則。

2. 特點

1) 重量級框架

對比Flask框架,Django原生提供了眾多的功能元件,讓開發更簡便快速。

  • 提供專案工程管理的自動化指令碼工具
  • 資料庫ORM支援(物件關係對映,英語:Object Relational Mapping)
  • 模板
  • 表單
  • Admin管理站點
  • 檔案管理
  • 認證許可權
  • session機制
  • 快取

2)MVT模式

有一種程式設計模式叫MVC,其核心思想是分工、解耦,讓不同的程式碼塊之間降低耦合,增強程式碼的可擴充套件性和可移植性,實現向後相容

MVC的全拼為Model-View-Controller

,最早由TrygveReenskaug在1978年提出,是施樂帕羅奧多研究中心(Xerox PARC)在20世紀80年代為程式語言Smalltalk發明的一種軟體設計模式,是為了將傳統的輸入(input)、處理(processing)、輸出(output)任務運用到圖形化使用者互動模型中而設計的。隨著標準輸入輸出裝置的出現,開發人員只需要將精力集中在業務邏輯的分析與實現上。後來被推薦為Oracle旗下Sun公司Java EE平臺的設計模式,並且受到越來越多的使用ColdFusion和PHP的開發者的歡迎。現在雖然不再使用原來的分工方式,但是這種分工的思想被沿用下來,廣泛應用於軟體工程中,是一種典型並且應用廣泛的軟體架構模式。後來,MVC的思想被應用在了Web開發方面,被稱為Web MVC框架。

MVC模式說明

  • M全拼為Model,主要封裝對資料庫層的訪問,對資料庫中的資料進行增、刪、改、查操作。
  • V全拼為View,用於封裝結果,生成頁面展示的html內容。
  • C全拼為Controller,用於接收請求,處理業務邏輯,與Model和View互動,返回結果。

Django的MVT

  • M全拼為Model,與MVC中的M功能相同,負責和資料庫互動,進行資料處理。
  • V全拼為View,與MVC中的C功能相同,接收請求,進行業務處理,返回應答。
  • T全拼為Template,與MVC中的V功能相同,負責封裝構造要返回的html。

注:差異就在於黑線黑箭頭標識出來的部分

3. Django學習資料