对Glashammer应用引擎Web框架的看法 我必须研究一些代码,并考虑在Python框架中工作,称为
我知道也喜欢Django。我对Appengine原生框架和Appengine上的Django有一些经验 我想从你那里知道,如果你使用了其中的一个或多个,Glahammer会如何与其他人进行比较和对比。有什么优点和缺点,还有什么我需要知道的。在谷歌搜索一下(并找到你的问题:)和半小时的文档和代码阅读后,我可以这么说 Glashammer之所以伟大是因为:对Glashammer应用引擎Web框架的看法 我必须研究一些代码,并考虑在Python框架中工作,称为,python,django,google-app-engine,Python,Django,Google App Engine,我知道也喜欢Django。我对Appengine原生框架和Appengine上的Django有一些经验 我想从你那里知道,如果你使用了其中的一个或多个,Glahammer会如何与其他人进行比较和对比。有什么优点和缺点,还有什么我需要知道的。在谷歌搜索一下(并找到你的问题:)和半小时的文档和代码阅读后,我可以这么说 Glashammer之所以伟大是因为: 记录良好 重量轻,非常灵活 与Werkzeug本身不同,它提供了几乎所有可以快速构建复杂web应用程序的功能 没有患NIH综合症,这可以说是D
- 记录良好李>
- 重量轻,非常灵活李>
- 与Werkzeug本身不同,它提供了几乎所有可以快速构建复杂web应用程序的功能李>
- 没有患NIH综合症,这可以说是Django最大的疣李>
- 不强制使用与数据库相关的库,因此支持可以从Python使用的任何存储。Django只支持一些关系数据库,并假设您对它们感到满意。当然,您可以删除Django ORM,但这使得admin——Django的最大优点——毫无用处李>
- 到目前为止,设备是定义视图的最佳方式
- 与Django相比,其发展历史较短,社区规模较小,因此:
- 不可避免地降低核心代码的质量,以及
- 不可避免地降低了代码的贡献量李>
- 使用一些可能不稳定的组件(例如,处于alpha阶段的flatland,尽管它是一个任意标签,可能与质量无关;此外,它仅用于glashammer.utils.yconfig)李>
- 不提供用于定义模型的API(例如,一些带有后端的声明性包装器),因此应用程序的“可插入性”可能比Django中的要弱得多(应用程序将对环境做出太多的假设)
无论如何,我认为这个框架值得深入研究。我有很大的偏见,因为我是格拉沙默的作者。但我的优点是:
- 基于Werkzeug的框架在创建基于Werkzeug的框架时删除了许多样板文件 应用程序
- 易插拔性和高灵活性:2个级别的插件、可重用组件的设备和行为规范的捆绑包 修饰语
- 单元测试良好
- 文档不错(对于开源项目)
我有没有提到代码就像一个发光的球体一样美丽。。。(哦,也许这是主观的)谢谢你的精彩总结。关于Glashammer中的模型定义API的一点是:如果您使用的是RDBMS,您可能应该使用SQLAlchemy的声明性扩展,它几乎和Django一样简单,但是您可以获得SQLAlchemy的可爱之处。我更喜欢一个轻量级的后端不可知建模框架,带有后端特定的字段/查询扩展。这将改善“可插入性”。我正在为无模式数据库开发这样的东西(),但没有与SQLAlchemy集成的计划。在我认为或多或少等于Glashammer的SvGAGA框架中可以看到一种更普遍的方法。(虽然我选择Glashammer作为我的下一个应用程序,因为它有更好的文档记录,并且允许从最小的工作代码开始,而不是在开始之前学习整个框架。)…顺便说一句,Glashammer的PyModels包可以在中找到:)我不确定我做的每件事都是正确的,但至少它可以工作。我还添加了一些快捷方式,如果您觉得值得添加的话,我希望在Glashammer中看到这些快捷方式。值得注意的是,Glashammer是一个通用的web应用程序框架,而不仅仅是AppEngine(它恰好可以工作)。我个人认为这是一个更全面的答案。