Skip to content

為何要用Flask Web應用框架

Published: 2 分鐘

「影化身科技」的後台的技術框架中,針對Web應用/服務,採用的是Flask這套應用框架。您也許會疑問:為什麼不使用較流行的Django? 甚至為什麼選擇Python?山姆鍋在這篇文章會分享當初做這樣的決策的主要原因。

EDIT: 2013/10/28: 雖然在某些情況下還會使用,但Flask以經不再是「影化身科技」主要的web應用框架。

為何使用 Python?

認識山姆鍋的人都知道,我從事Java後台與Web應用開發多年。照理說,應該是要選擇Java相關的技術或框架。會選擇Python的主要原因是希望利用市場上現有的PaaS服務,其中最重要的是Google App Engine。使用Java平台,執行時期需要的資源相對較高,況且「影化身」並不使用傳統關聯式資料庫,像是JPA/Hibernate這樣的程式庫基本上是用不著。既不想用Java,也需要在Google App Engine上部署軟體,又希望能夠在其他PaaS開發。按照這個思路,Python是很自然的選擇。

為何選擇 Flask?

既然選擇Python作為主要(在影化身,我們混合不同技術作開發與部署環境)後端語言,下一步自然是選擇應用框架。過程就不細說了,山姆鍋選擇技術方案憑藉的絕對不會是最科學的方法,往往是因為喜不喜歡來決定。其實應該這樣說:只要能符合要求,其他就看個人喜好。對於Web應用框架,山姆鍋主要的需求如下:

  • 支援RESTful服務/API開發。
  • 可以根據需要選擇模組。
  • 支援Google App Engine。
  • 小而美,容易理解。

這裡需要再說明一點:後端主要是要提供服務給前端客戶端,不會有複雜的用戶界面。不管過程是怎樣,Flask作為「影化身」重要的技術框架之一已經是確定的事。山姆鍋對Django或其他框架不熟悉,沒有資格評論它們的優缺點。選擇Flask的很大原因,真的只是我比較喜歡。如果您是想找關於Flask的優缺點分析,抱歉讓您失望了!

郭信義 (Sam Kuo)

奔騰網路科技技術長,專長分散式系統、Web 應用與雲端服務架構、設計、開發、部署與維運。工作之餘,喜歡關注自由軟體的發展與應用,偶爾寫一下部落格文章。

你可能會有興趣的文章