微架構 Python Flask 和 Ruby Sinatra,哪個更值得推薦?

來源:互聯網
上載者:User
說到微架構,Python Flask和Ruby Sinatra無疑是最熱門的兩個了,想聽聽有接觸過的朋友對這兩個的評價以及推薦建議。從我目前的瞭解,Python雖然在國內的發展貌似好於Ruby,但是在國外的Web開發方便,Ruby的Rails/Sinatra基本上都佔據著主導的位置,從Google出來的資料便可略知一二。

回複內容:

這個問題很難回答,Sinatra vs Flask的最主要差別,其實是Ruby和Python的差別。當然Flask要比Sinatra重一些,社區更完善,文檔更多,擴充性更強。Sinatra本身如果要應用在中型以上的項目,要自己做很多boilerplate,當然你也可以用基於Sinatra並且整合了許多東西的Padrino。

對於這種micro framework,他們絕大多數的設計哲學都很像,其中的差別主要是語言本質的差別。當然,要開發一個稍微有一點規模的東西,是需要引入大量的third party libraries的,尤其是ORM。Python的ORM主要是SQL Alchemy,而Ruby用的比較多的事ActiveRecord和DataMapper。

最後,我對“在國外的Web開發方便,Ruby的Rails/Sinatra基本上都佔據著主導的位置”並不認同。Ruby/Rails社區在Web方面很有創造力,有許多很不錯的idea,而Python社區則相對安靜。但是對於產出來說,Python並不比Ruby弱。Jeff Atwood寫過一篇文章,提到“Ruby is not cool anymore”,所以你看到Ruby社區似乎很“活躍”,其實是因為Ruby/Rails流行的比較晚,所以有許多空白要填補,也有許多新輪子由於語言特性而被造出來——Python很早已經過了這個時代。在過了“being cool”的時代過後,將會迎來“get shit done”的時代。這問題和 Python VS. Ruby 沒什麼不同。。。

問題是何必 VS 呢,訓練有素的工程師在這兩個架構下寫點東西用不了 30 分鐘的時間。花個周末連 node 的架構也一起玩玩,喜歡什麼自然有判斷。web編程最花時間的是模板和DB,模板各家都差不多,DB的orm 庫,python裡面只有django做的最好,但是無法獨立使用,Sinatra 可以用ActiveRecord。所以,不考慮學習成本的情況下,幹活用Sinatra更好1 - 我用Sinatra三年了, 說它簡單, 其實只是用起來簡單。 學起來, 對它深入瞭解, 最佳化, 就不容易了,

2 - 實質性的, Sinatra就是Rack, RoR也是Rack, 好比不同的linux發行版一樣。


文檔和源碼 sinatra/sinatra · GitHub python vs ruby. 點在於python坑少
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.