免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2141 | 回复: 0
打印 上一主题 下一主题

python web framework比较 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-05-02 19:52 |只看该作者 |倒序浏览

                                                1. Python web development and frameworks in 2007
http://jesusphreak.infogami.com/blog/vrp1
非常详细的比较,对于zope, web.py, 如果自己开发框架, pylons, django, TurboGears 分别从下面几个方面阐述:
  • the general philosophy of the framework
  • the URL dispatching system used
  • the templating system used
  • the object-relational mapper used
  • the form handling used
  • extra types of functionality
  • advantages of using the framework
  • disadvantages of using the framework
  • the future direction of the framework and concerns I have with it
2.  TurboGears and Pylons (a technical comparison)
http://blog.ianbicking.org/turbogears-and-pylons.html
3. Pylons vs TurboGears
http://pythonmag.blogspot.com/2006/02/pylons-vs-turbogears.html
从自身感受来说:
(1)zope 最强大,模块化最好,不同的component通过zcml(xml文件) 粘合,耦合度低,跟java开发的模型很接近。zope里面的一些模块比如interface独立出来后也在很多项目中得到了应用(比如twisted)。zope不是快速开发类型的,打算开始一个项目时,如我这种初学者甚至不知从何处下手。 zope book写得不够体系,虽然包括有如何开发一个component,但是不能让学习者对全局体系和开发流程有清晰的认识。
另外,有人提起过,大量zcml文件使得如果zcml文件里面有配置错误,则很难调试。
(2)django是fullstack的快速快发框架,上手很方便。这种大包大揽的方式虽然能保证一致的体系和风格,但是它自己的组件很难和其它专门的开源项目比肩,集成其它项目也比较麻烦。例如SqlAlchemy出现后,基本所有的框架都提供了对它的支持,但django就远远落在后面。
django的一些为人津津乐道的便利,比如自动管理界面等,并不是对开发代码提供多大的便利,而只是针对CMS这些应用帮助完成了一下面向最终用户的界面。
(3)我原先用turbogears,看了包括上面的文章的一些比较后,转向了pylons,迁移过程很顺利。这两个项目有太多的相似,都是利用paster自动生成代码,都是对其它组件的粘合,除了TG用cherrypy,pylons用paster作为底层,其它部分很多都是相互移植的,比如pylons的router移植到TG,TG的通用模板系统移植到pylons,TG分离出来的ToscaWidget可应用于pylons等。 由于paster是符合wsgi规范的,而目前TG所用的cherrypy 2.0不是(cherrypy3.0提供了 wsgi支持),这些造成了主要的不同。TG通过decorator提供各种功能(expose,validate等),pylons通过helper提供功能。TG的权限认证是自己做的,利用model在数据库中生成相关的权限表(通过require decorator使用),很方便很强大,而pylons因符合wsgi规范,可通过独立的基于wsgi的AuthKit 提供authentication和authorization,可提供多种认证(LDAP,配置文件等).实用工具上TG较多,不过有些outdated了(比如以前针对sqlobject,现在不支持sqlalchemy),pylons的调试非常方便,在浏览器中访问页面,可以查看调用栈,可以看变量字典,可以自己输入执行语句。  因为这两个框架太相似了,很多人提到了是否有两者合并的可能性,如果成真的话,利好包括:避免很多重复劳动,开发出更多更方便的工具集等。
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/8650/showart_290704.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP