python的web应用框架可谓非常极其之多,远非其他语言所能比
某本书说:为什么python有如此多的web框架?因为实现一个太简单了。。
好了,下面简单介绍几款吧:
.Zope:Zope 发布年代之早,开发时间之长,造成的影响之大,甚至于有人认为“未来互联网就是 Zope”。 开创了一系列 Web 应用开发的
新技术和理念;形成了宏大的社区和模块树; 虽然学习曲线实在太陡,但是过来人都说“只要是作 Web 应用开发,学到底就会发现,其实一切
都在 Zope 中实现过了!”Twisted:Twisted也是老牌社区的作品,关注网络应用底层支持,支持几乎所有网络协议,关注企业级的网络服务
构建;只是缺少立等可取的应用框架,一切都得用 Twisted 去现实,算是提供了成套的钻石级工具箱!CherryPy、Quixote(豆瓣)、
Karrigell、web.py 等都轻小型框架:标志特性是没有内置的数据库(类似 MySQL 的关系型主流数据库)支持模块。突出的共同特色有:配
置简便;模板系统简单轻便,或是可以自由使用外部模板系统;调试相对方便,有的甚至有专门的问题回溯机制。Django、TurboGears、
Eurasia、UliWeb等:突出的共同特色有:有内置的 ORM 模块支持数据库的对象化操作;有内置的事务性功能支持(比如说登录认证);有高
级的模板系统,支持复杂的页面组合,有的甚至有内置的 Ajax 页面动态效果支持。根据关键功能组件的实现,又分两类:
“All in one 式”:任何方面的功能都是自行开发内置包含的;胜在内部契合严密,所以运行效率比较好;但是,一旦有问题就非常难以清查,而且
一般很难做到平滑的版本兼容;吻合框架针对的领域开发起来比较直接,但是难以定制支持另外的情景,Django是其中之翘楚。“Mix-in
式”:多数方面的功能是直接使用第三方模块来完成的;胜在选择自由,可以使用各种类似的已熟悉的功能组件来替代默认的,学习成本小;而且
各个组件可以单独升级,版本兼容危机小;但是,由于要兼顾各种组件接口,隐患要多些,又是通过中间层来进行配合的,数据通过了很多类转发,
运行效能可能比较低;TurboGears 是其中的经典作品。
推荐学习《python学习网》。