不知不覺來千鋒Python培訓已經三個多月了,通過三個月的學習,從“hello world”都不懂的小白,漸漸的可以自己碼一些簡單的代碼。三個月來,Python基礎、web前端、django框架和flask框架、爬蟲,在講師的帶領下,從陌生到漸漸的融會貫通,可以真真實實的看到自己的進步。由于正在學習flask,自己對web方面的東西也比較感興趣,就分享下django框架和flask框架的總結和對比,僅供參考!
flask和django都是非常實用的web框架,django面向比較大的應用,框架內模塊比較多,提供web應用開發一站式解決方案,能讓開發者不用在開發之前就在選擇應用的基礎設施上花費大量的時間。django有模板、表單、路由、認證、基本的數據庫款里等等的內建功能,框架結構一目了然,總之就是為你做盡量多的事情。而flask就簡單多了,flask是一個微框架,它只提供了一些核心功能,非常的簡潔優雅。它主要面向一些需求簡單的小應用,flask的簡潔性同時也給開發者帶來多的靈活性,開發者可以自由應用擴展進行開發。
django的模塊化也是這個框架的一大特點,djangp的模塊化是集成在命令里的,也就是說一開始django的目標就是為以后玩大了做準備的,每一個都是獨立的模塊,解耦性非常強,當程序出現bug或者上線之后做維護都是非常方便的,只需要在相應的模塊內調試即可,但是,任何事都是有利有弊的,模塊化的同時,使整個框架變得非常笨重,自帶ORM和模板引擎,靈活度和自由度都不夠高。flask通過Blueprint來提供模塊化,自己對項目結構劃分成不同的模塊進行組織。即可以自定義模塊,靈活度,但是,對擁有良好編程習慣的人來說flask應該是選擇框架,對于習慣不好的,代碼寫得比較亂的同學來說,flask真是太不友好了!
由于現在正在學習flask,而且用的也還不夠好,簡單說下個人理解。django的設計應該是快速開發功能性web App的,模塊化非常好,并且提倡應用化,就是一個應用只負責一個功能,將所有應用組合在一起就是一個整體應用,將復雜的系統拆開來,非常的清晰,而且也便于維護,解耦性強。django的設計思想類似于現在的微服務,可以讓每個人寫出的項目都有一個清晰統一的結構,非常適合實力參差不齊的團隊開發。但是缺點也很明顯,就是框架限制了你的項目,只能按照框架結構來,非常的被動。flask輕量級框架,只提供了基本的功能,其他的一切事情都需要自己搞(當然flask有很多的插件),對自己的能力比較有自信或者思路比較開闊的開發者使用flask的話性能一般會比django高,而且也易于擴展。
兩者都有利有弊,還是要看實際需求,想開發的又快又穩的話就用django,想有定制性一點,就使用flask。個人目前只會用django,flask還處于起步階段,還沒用明白。
總之,在千鋒Python培訓的這三個月時間里,自己就像打開了一扇新世界的大門,看到的,聽到的都是以前沒接觸過的,充滿好奇,不自覺的開啟學習模式,掌握新知識,希望在接下來的時間里繼續保持好這種學習狀態,好好學習,天天向上!
相關文章
了解千鋒動態
關注千鋒教育服務號
掃一掃快速進入
千鋒移動端頁面
掃碼匿名提建議
直達CEO信箱