天天看點

Django架構學習-簡介Django架構學習-簡介

Django架構學習-簡介

  • 簡介
  • 特點

1. 簡介

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

Django架構學習-簡介Django架構學習-簡介

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

2.特點

a.  重量級架構

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

  • 提供項目工程管理的自動化腳本工具
  • 資料庫ORM支援(對象關系映射,英語:Object Relational Mapping)
  • 模闆
  • 表單
  • Admin管理站點
  • 檔案管理
  • 認證權限
  • session機制

b.  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模式說明

Django架構學習-簡介Django架構學習-簡介

- M全拼為Model,主要封裝對資料庫層的通路,對資料庫中的資料進行增、删、改、查操作。

- V全拼為View,用于封裝結果,生成頁面展示的html内容。

- C全拼為Controller,用于接收請求,處理業務邏輯,與Model和View互動,傳回結果。

Django的MVT

Django架構學習-簡介Django架構學習-簡介

- M全拼為Model,與MVC中的M功能相同,負責和資料庫互動,進行資料處理。

- V全拼為View,與MVC中的C功能相同,接收請求,進行業務處理,傳回應答。

- T全拼為Template,與MVC中的V功能相同,負責封裝構造要傳回的html。

注:本系列隻為個人學習,記憶Django架構使用.