01.09 詳細介紹:Django和Flask這兩個框架在設計上各方面優缺點

這話題有些大,網上的比較也比較多,這裡就簡單說一下,歡迎大家一起探討。

一、整體設計方面

首先,兩者都是非常優秀的框架。整體來講,兩者設計的哲學是區別最大的地方。

Django提供一站式的解決方案,從模板、ORM、Session、Authentication等等都分配好了,連app劃分都做好了,總之,為你做盡量多的事情,而且還有一個killer級的特性,就是它的admin,配合django-suit,後臺就出來了,其實最初Django就是由在新聞發佈公司工作的人設計的。

Flask只提供了一些核心功能,非常簡潔優雅。它是一個微框架,其他的由擴展提供,但它的blueprint使它也能夠很方便的進行水平擴展。

詳細介紹:Django和Flask這兩個框架在設計上各方面優缺點

二、路由設計

Django的路由設計是採用集中處理的方法,利用正則匹配。Flask也能這麼做,但更多的是使用裝飾器的形式,這個有優點也有缺點,優點是讀源碼時看到函數就知道怎麼用的,缺點是一旦源碼比較長,你要查路由就不太方便了,但這也促使你去思考如何更合理的安排代碼。

三、應用模塊化設計

Django的模塊化是集成在命令裡的,也就是說一開始Django的目標就是為以後玩大了做準備的。每個都是一個獨立的模塊,為以後的複用提供了便利。

Flask通過Blueprint來提供模塊化,自己對項目結構劃分成不同的模塊進行組織。

詳細介紹:Django和Flask這兩個框架在設計上各方面優缺點

四、配置

Django的配置主要還是靠settings.py來做,當然為了Development和Production環境分離,還有一些方法來處理配置。

Flask的配置很靈活,有多種方法配置,不同環境的配置也非常方便。

五、文檔

兩者都提供了詳盡的文檔,Flask的文檔風格很受我個人喜好,Django的文檔也非常優秀,當時用學Django時,就是隻看了Django的文檔。

詳細介紹:Django和Flask這兩個框架在設計上各方面優缺點

六、社區

Django社區很大,各種插件很齊全,大部分情況下你都能找到你想要的。

Flask起步晚,但社區也不小,之前有一次看在github上的star數,兩個相差並不遠,說明越來越多的人關注它,雖然插件沒那麼全,但常用的還都是有的,而且質量都比較高。

最後再次說一下,兩個都是非常優秀的框架,很多時候選用這些框架是根據實際項目側重不同來選的

結尾

最後多說一句,小編是一名python開發工程師,這裡有我自己整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習等。想要這些資料的可以關注小編,並在後臺私信小編:“01”即可領取。


分享到:


相關文章: