對初學(xué)者來說,循序漸進是最重要的,我推薦學(xué)習(xí) Flask

作者:shonenada

鏈接:https://www.zhihu.com/question/20706333/answer/24927602

來源:知乎

著作權(quán)歸作者所有,轉(zhuǎn)載請聯(lián)系作者獲得授權(quán)。

對初學(xué)者來說,循序漸進是最重要的,我推薦學(xué)習(xí) Flask(Welcome | Flask (A Python Microframework)

Flask 很輕,花很少的成本就能夠開發(fā)一個簡單的網(wǎng)站。非常適合初學(xué)者學(xué)習(xí)。

Flask 框架學(xué)會以后,可以考慮學(xué)習(xí)插件的使用。例如使用 WTForm + Flask-WTForm 來驗證表單數(shù)據(jù),用 SQLAlchemy + Flask-SQLAlchemy 來對你的數(shù)據(jù)庫進行控制。

BTW:果殼網(wǎng)基于 Flask 開發(fā)的。

另外也簡單介紹下其他框架:

1. Django。如樓上所說,是一個全能型框架。目前 Django 的使用面還是很廣的,有學(xué)習(xí)的價值,但是不建議初學(xué)者學(xué)習(xí),因為要學(xué)習(xí)的東西太多了,一下子難以吸收會失去興趣。當(dāng)然,Django 的目的是為了讓開發(fā)者能夠快速地開發(fā)一個網(wǎng)站,它提供了很多模塊,其中我最喜歡的就是 admin 模塊,http://your.site.com/admin就進入了網(wǎng)站的后臺(內(nèi)置的哦~)方便地對數(shù)據(jù)進行操作,等等。。。。因此,如果對 Django 熟悉的話,papapa 一下子就寫好一個網(wǎng)站的原型了。

2. Tornado。傳說中性能高高的框架。Tornado 是一個很好的框架,支持異步處理的功能,這是它的特點,其他框架不支持。另外一點是,Tornado 的設(shè)計似乎更注重 RESTful URL。但 Tornado 提供了網(wǎng)站基本需要使用的模塊外,剩下的則需要開發(fā)者自己進行擴展。例如數(shù)據(jù)庫操作,雖然內(nèi)置了一個 database 的模塊(后來獨立出去了,現(xiàn)在叫做 torndb,bdarnell/torndb · GitHub)但是不支持 ORM,快速開發(fā)起來還是挺吃力的。如果需要 ORM 支持的話,還需要自己寫一層將 SQLAlchemy 和 Tornado 聯(lián)系起來,而且這里還有一個坑。

BTW:知乎就是基礎(chǔ) Tornado 開發(fā)的。

3. Bottle。Bottle 和 Flask 都屬于輕量級的 Web 框架。但是 Bottle 似乎落寞了。我覺得跟他的 API 設(shè)計有關(guān)系。個人認(rèn)為 Bottle 使用起來不那么順手,因此也用得少。這里不做太多介紹。

4. web.py。也是很輕的一個框架,使用不多,也不做介紹。

5. web2py。我看樓上都沒有對這個框架做介紹。這個框架是 Google 在 web.py 基礎(chǔ)上二次開發(fā)而來的,兼容 GAE 。性能據(jù)說很高,曾經(jīng)用他來做自己的主頁,感覺也還不錯。缺點同樣是對擴展支持不太好,需要自己進行擴展。

6. Quixote。著名的豆瓣就是基于 Quixote 開發(fā)的。跟上面幾個框架不同,Quixote 的路由會有些特別。另外 Quixote 的性能據(jù)說也好。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容