當前位置:生活全書館 >

IT科技

> flask和django的對比

flask和django的對比

flask和django的對比如下:
  
  Flask是一個由Python語言寫成的輕量級Web框架,最早由奧地利人Armin Ronacher於2010年釋出。Flask最顯著的特點是它是一個“微”框架,輕便靈活,但同時又易於擴充套件。預設情況下,Flask 只相當於一個核心,不包含資料庫抽象層ORM、使用者認證、表單驗證、傳送郵件等其它Web框架經常包含的功能。Flask依賴用各種靈活的擴充套件(比如郵件Flask Mail,使用者認證Flask Login,資料庫Flask SQLAlchemy)來給Web應用新增額外功能。Flask的這種按需擴充套件的靈活性是很多程式設計師喜歡它的地方。Flask沒有指定的資料庫,可以用MySQL,也可以用 NoSQL。
  
  Django是一個開源的Python Web應用框架,採用了MVT的框架模式,即模型M,檢視V和模版T,最早於2005年釋出。Django被認為是“大而全”的重量級Web框架,其自帶大量的常用工具和元件(比如資料庫ORM元件、使用者認證、許可權管理、分頁、快取), 甚至還自帶了管理後臺Admin,適合快速開發功能完善的企業級網站。Django自帶免費的資料SQLite,同時支援MySQL與PostgreSQL等多種資料庫。
  
  流行度,Flask和Django均是當今最流行的Python Web框架。截至2019年9月2日,Flask在Github上的星數是46179顆,Django的Github星數是43806顆,兩者幾乎難分伯仲,其它Python Web框架與Flask和Django星數相差甚遠。考慮到Django早釋出5年,而Flask在星數上還領先2000多顆,由此可以得知Flask當前略微佔優。
  
  從應用上來說,Flask與Django均廣泛用於Web應用開發。利用Django開發的著名網站包括Pinterest, Disqus, Eventbrite, Instagram and Bitbucket。不過最近Pinterest改用Flask開發它的API了。其它利用Flask開發的專案包括 Twilio, Netflix, Uber和LinkedIn。Django似乎更多用來開發常規網站,而Flask經常用來開發API(比如Pinterest和Twilio)。(注:這點可以理解。如果只需要開發Web API,Django自帶的大而全的網站功能很多用不上,比如快取和管理後臺。)
  
  效能上兩者差不多。有些人會說Django會因“大而全”更慢些,其實這是Python的鍋。網上有人測試對比過Flask和Django的效能,兩者速度差不多,並無本質差異。

  

flask和django的對比
標籤: django flask
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/dianzi/pq2p08.html