python django flask介绍,Django/Flask简介

此文部分参照《Python高效开发实战》--刘长龙

Python网络框架

网络框架指一组python包,它能够让开发者更加专注于网站应用业务逻辑的开发,而无须处理网络应用层的协议、线程、进程等方面,从而提高开发者的工作效率以及网络应用程序的质量。

目前Python语言的十几个开发框架中,几乎所有的全栈网络框架都强制或引导开发者使用MVC架构开发Web应用.

Python的四种主流框架为:Django/Flask/Tornado/Twisted

此篇博文围绕Django/Flask讲解各自特点以及主要应用.

MVC:

MVC--M(Model):封装与应用程序相关的业务逻辑的数据及对数据的处理方法,是处理数据逻辑的部分.Model提供功能性接口,通过接口访问数据;

MVC--V(View):负责数据的显示和呈现,View是对用户的直接输出;

MVC--C(Controller):从用户端收集用户的输入,可以看作View的反向功能,Controller将用户作出的改变返回给Model,由Model在返回给View,Model作为数据中心,从而提高数据的一致性;

3b300651971b?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

1.PNG

ORM(Object-Relational Mapping 对象关系映射):是在关系型数据库和业务实体对象之间的映射,即开发者对对象与属性进行操作,而不用再去写复杂的sql语句,ORM必须具备三方面功能:

映射技术:

数据类型映射

类映射

关系映射

CRUD操作:(ORM将这些调用转换为SQL语句,通过引擎发送给数据库执行,将结果记录并转换为对象)

create增加

Retrieve读取

Upadate更新

Delete删除

缓存优化:由于数据库的操作通常比较耗时,所以大多数ORM提供数据缓存优化的功能

Django

Django发布于2003年,是当前最成熟完整最广泛以及最富盛名的Python网络框架.Django定义了服务发布;路由映射;模板编程;数据处理的一整套功能.遵循MVC架构.

优点:

各模块之间结合紧密;

功能强大而相对封闭;

完整的在线文档及健全的开发社区;

具备自带优秀的ORM;

强大的URL映射技术;

后台管理系统自动生成;

用户多,第三方库丰富;

成熟稳定完善,适合企业级网站开发

缺点:

由于自带的丰富功能造成的冗余/耦合程度较高;

可能相对较重,比如开发小应用时,可能会不够灵活/自由;

Flask

Flask发布于2010年,它吸收了其他框架的优点并且把自己的主要领域定义在微小项目上.作为微框架,安装时不会自动安装ORM数据组件等其他组件,所以开发者需要自行安装需要的组件.

优点:

内置开发服务器和调试器:Flask默认处于调试状态,运行时会将错误返回给控制台以及HTTP客户端;

与Python单元测试功能无缝连接:测试程序可以模拟进行HTTP访问的客户端来调用Flask路由处理函数,并且获取函数的输出来进行自定义的验证;

使用Jinja2模板,强大程度略高于Django的自带模板;

完全兼容WSGI 1.0 标准;

给予Unicode编码;

完美适合小型网站;

第三方库同样丰富;

开发灵活程度高,入门简单;

缺点:

很多东西需要从头构建;

用的第三方插件可能要踩的坑较多;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值