面试中介绍django的方法

发布时间:2020-09-02 11:03:43 作者:小新
来源:亿速云 阅读:123

这篇文章主要介绍面试中介绍django的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

对Django的认识?

1.Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。

2.Django内置的ORM跟框架内的其他模块耦合程度高。应用程序必须使用Django内置的ORM,否则就不能享受到框架内提供的种种基于其ORM的便利;理论上可以切换掉其ORM模块,但这就相当于要把装修完毕的房子拆除重新装修,倒不如一开始就去毛胚房做全新的装修。

3.Django的卖点是超高的开发效率,其性能扩展有限;采用Django的项目,在流量达到一定规模后,都需要对其进行重构,才能满足性能的要求。

4.Django适用的是中小型的网站,或者是作为大型网站快速实现产品雏形的工具。

5.Django模板的设计哲学是彻底的将代码、样式分离; Django从根本上杜绝在模板中进行编码、处理数据的可能。

Django 、Flask、Tornado的对比

1.Django走的是大而全的方向,开发效率高。它的MTV框架,自带的ORM,admin后台管理,自带的sqlite数据库和开发测试用的服务器给开发者提高了超高的开发效率

2.Flask是轻量级的框架,自由,灵活,可扩展性很强,核心基于Werkzeug WSGI工具和jinja2模板引擎

3.Tornado走的是少而精的方向,性能优越。它最出名的是异步非阻塞的设计方式Tornado的两大核心模块: 1、iostraem:对非阻塞式的socket进行简单的封装 2、ioloop:对I/O多路复用的封装,它实现了一个单例

什么是wsgi,uwsgi,uWSGI?

WSGI:web服务器网关接口,是一套协议。用于接收用户请求并将请求进行初次封装,然后将请求交给web框架

实现wsgi协议的模块: 1.wsgiref,本质上就是编写一个socket服务端,用于接收用户请求(django) 2.werkzeug,本质上就是编写一个socket服务端,用于接收用户请求(flask)

uwsgi:与WSGI一样是一种通信协议,它是uWSGI服务器的独占协议,用于定义传输信息的类型

uWSGI:是一个web服务器,实现了WSGI协议,uWSGI协议,http协议,

django请求的生命周期?

1.wsgi,请求封装后交给web框架 (Flask、Django)

2.中间件,对请求进行校验或在请求对象中添加其他相关数据,例如:csrf、request.session -

3.路由匹配 根据浏览器发送的不同url去匹配不同的视图函数

4.视图函数,在视图函数中进行业务逻辑的处理,可能涉及到:orm、templates => 渲染 -

5.中间件,对响应的数据进行处理。

6.wsgi,将响应的内容发送给浏览器。

简述什么是FBV和CBV?

FBV和CBV本质是一样的 基于函数的视图叫做FBV,基于类的视图叫做CBV 在python中使用CBV的优点:

1.提高了代码的复用性,可以使用面向对象的技术,比如Mixin(多继承)

2.可以用不同的函数针对不同的HTTP方法处理,而不是通过很多if判断,提高代码可读性

以上是面试中介绍django的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. Django中ORM介绍和字段及字段参数
  2. Django的用户认证----介绍

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

django dj

上一篇:django对密码加密的方法

下一篇:django配置多个超链接的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》