目录
回复内容:
首页 后端开发 Python教程 微框架 Python Flask 和 Ruby Sinatra,哪个更值得推荐?

微框架 Python Flask 和 Ruby Sinatra,哪个更值得推荐?

Jun 06, 2016 pm 04:24 PM
google python rails ruby

说到微框架,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坑少
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Linux系统自带Python解释器能删除吗? Linux系统自带Python解释器能删除吗? Apr 02, 2025 am 07:00 AM

关于Linux系统自带Python解释器的删除问题许多Linux发行版在安装时会预装Python解释器,它并非通过软件包管理器�...

如何解决Python中自定义装饰器的Pylance类型检测问题? 如何解决Python中自定义装饰器的Pylance类型检测问题? Apr 02, 2025 am 06:42 AM

使用自定义装饰器时的Pylance类型检测问题解决方法在Python编程中,装饰器是一种强大的工具,可以用于添加行�...

在Linux终端中使用python --version命令时如何解决权限问题? 在Linux终端中使用python --version命令时如何解决权限问题? Apr 02, 2025 am 06:36 AM

Linux终端中使用python...

Python 3.6加载pickle文件报错ModuleNotFoundError: No module named '__builtin__'怎么办? Python 3.6加载pickle文件报错ModuleNotFoundError: No module named '__builtin__'怎么办? Apr 02, 2025 am 06:27 AM

Python3.6环境下加载pickle文件报错:ModuleNotFoundError:Nomodulenamed...

FastAPI 和 aiohttp 是否共享同一个全局事件循环? FastAPI 和 aiohttp 是否共享同一个全局事件循环? Apr 02, 2025 am 06:12 AM

Python异步库之间的兼容性问题在Python中,异步编程已经成为处理高并发和I/O...

Python 3.6加载Pickle文件报错"__builtin__"模块未找到怎么办? Python 3.6加载Pickle文件报错"__builtin__"模块未找到怎么办? Apr 02, 2025 am 07:12 AM

Python3.6环境下加载Pickle文件报错:ModuleNotFoundError:Nomodulenamed...

如何在Python中通过信号杀死父进程后确保子进程也终止? 如何在Python中通过信号杀死父进程后确保子进程也终止? Apr 02, 2025 am 06:39 AM

使用信号杀死父进程时,子进程继续运行的问题及解决方案在Python编程中,通过信号杀死父进程后,子进程仍然...

See all articles