随着互联网的兴起,web开发变得愈发的重要。Python作为当前火热的语言, 其中的web开发框架可以说是百花齐放,下面聊一聊这些框架。
基于Python的代表性Web框架
-
Django
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,模板T和视图V。发布于2005年,是当前Python世界里最负盛名且最成熟的Web框架。
image.png
Django makes it easier to build better Web apps more quickly and with less code.
特点:
-
功能
完善、要素齐全:自带大量常用工具和框架,无须自定义、组合、增删及修改。 - 完善的
文档
:Django的开发活跃,社区繁茂,有广泛的实践案例和完善的在线文档。 - 强大的
数据库访
问组件:Django的Model层自带数据库ORM组件,无须学习其他数据库访问技术。 - 灵活的
URL
映射:Django使用正则表达式管理URL映射,灵活性高。 - 丰富的Template
模板
语言:功能丰富,可以自定义模板标签。 - 自带后台管理系统
admin
:可以简单实现一个完整的后台数据管理控制平台。 - 完整的
错误提示
:在开发调试过程中出现错误或者异常,Django可以提供非常完整的错误信息帮助定位问题。
Django 适合初学者或者小团队的快速开发,适合做管理类、博客类网站、或者功能十分复杂需求十分多的网站。
-
Tornado
Tornado是一个用python语言写成的Web应用框架, 应用于FriendFeed公司,后由Facebook收购后开源。
Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.
优点:
-
较轻量
级框架:开发活跃度也很高, 功能完善,文档丰富 - 注重
性能
方面:速度快,异步非阻塞,特别支持高并发 - 服务器:默认启动时根据CPU数量运行多个实例;利用
CPU多核
的优势
Tornado支持异步高并发,适合访问量大,异步情况多的网站。
-
Flask
Flask是一个使用 Python编写的轻量级 Web 应用框架。其 WSGI工具箱采用 Werkzeug ,模板引擎则使用 Jinja2。
image.png
Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions.
特点:
- 完善的官方文档,详细的教程, 但是活跃度低
-
轻量级
框架,自由、灵活,可扩展性强,第三方库
的选择面广,部署方便
Flask非常适用于小型网站以及开发web服务的API
- Bottle & web.py
非常轻量级的,巧妙的web框架,但是该有的基本功能都不缺少,推荐去看看源码。
网友评论