一.认识
首先django 诞生于劳伦斯集团为了开发以新闻内容为主的网站,而开发的web框架。并且是用python语言写的开源web开发框架,并遵循MVT设计。
Django 是一个重量级的框架,走的是大而全的方向,对比Flask框架,Django原生提供了众多的功能组件,让开发更简便快速。
1.提供项目工程管理的自动化脚本工具(脚手架支持)
2.数据库ORM支持(对象关系映射)
3.模板
4表单
5.认证权限
6.文件管理
7.Admin管理站点
8.seession机制
9.缓存
二.对比
Django, Flask, Tornado的对比
1.Django走的说是大而全的方向,开发效率高。她的MVT框架,自带的ORM, admin后台管理自带的sqlite 数据库和开发测试用的服务器
2.Flask是轻量级的框架,自由,灵活,可扩展性很强,其核心基于werkzeug WSGI工具和jinja2模板引擎
3.Tornado 走的是少而精的方向,性能优越,它最出名的是异步非阻塞得设计方式
Tornado 的两大核心模块
1.iostraem :对非阻塞式的socket进行了简单的封装
2.ioloop : 对I/O多路复用的封装,她实现了一个单例
三 MVC 与MVT的区别
MVC的设计核心:解耦,让不同的代码块之间降低耦合,增强代码的可扩展和可移植性,实现向后兼容。
MVC分为三个部分: 模型(model), 视图(View)和控制器(Controller)
model:负责业务对象与数据库的映射(ORM)
view: 负责与用户交互
controller:接受用户的输入调用模型,和视图完成用户的请求
Django框架的MVT设计模式借鉴了MVC框架的思想,三部分分为model, template和view
model: 负责业务对象与数据数据库的对象(ORM)
Template: 负责如何把页面展示给用户
View:负责业务逻辑,并在适当的时候调用model和template
此外django还有一个urls分发器,它将一个个URL页面请求分发给不同的View处理,view在调用相应的model和template
网友评论