以下是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判断,提高代码可读性。

python框架django面试问别人什么问你_django面试会问什么相关推荐

  1. python框架django入门_web框架之Django(python3入门)

    -ORM ORM是什么? 不是django独有或者python独有的 对象关系映射 python中主流的几个ORM框架 django的orm(django已经封装好了,必须在django中使用) sq ...

  2. python框架django的使用_Django框架的基本使用,若依框架

    Django框架的基本使用,若依框架 Django框架的基本使用 Django是一个功能强大的web框架 框架模式 1.MVC和MTV框架 MVC:Web服务器开发领域里著名的MVC模式,所谓MVC就 ...

  3. python框架django面试问别人什么问你_你如何回答这个django面试问题?

    我最近为一家公司的面试前做了一个编程问题.问题是: 创建一个django应用程序,当然是测试驱动的,向世界展示Fibonacci的序列.应用程序应该取一个索引号并显示结果斐波纳契序列.另外,应该有一个 ...

  4. python框架django书籍_有Python基础,刚接触web框架的Django初学者。

    本文面向:有Python基础,刚接触web框架的Django初学者. 环境:windows7 python3.5.1 pycharm Django 1.10版 pip3 一.Django简介 百度百科 ...

  5. 使用python框架Django搭建web应用

    一.Django简介 1. web框架介绍 具体介绍Django之前,必须先介绍Web框架的概念. Web框架: 别人已经设定好的一个Web网站模板,你学习它的规则,然后"填空"或 ...

  6. Python框架Django快速入门

    原文地址:https://simpleisbetterthancomplex.com/series/2017/09/04/a-complete-beginners-guide-to-django-pa ...

  7. python框架django的数据库的正向生成和反向生成

    正向生成,指的是先创建model.py文件,然后通过django内置的编译器,在数据库如mysql中创建出符合model.py的表. 反向生成,指的是先在数据库中create table,然后通过dj ...

  8. python框架-Django安装使用

    1.安装pip sudo apt-get install python-pip 遇到问题需要更新下语言包 sudo apt-get update 检查pip是否安装成功 pip -V 查看已安装包 p ...

  9. python框架django文档_Django基础——Django框架介绍及模板语言

    Django框架,我们只需要关心二点: 1.根据用户访问不同的路径执行不同的函数 2.从HTML读取出内容,并且完成字符串的替换 而socket通信不需要我们自己写: 新建Django项目 命令行创建 ...

最新文章

  1. python实现简单的用户密码登录控制(输入三次就锁定用户)
  2. 刷新中文阅读理解水平,哈工大讯飞联合发布基于全词覆盖中文BERT预训练模型...
  3. thinkphp的伪静态化
  4. 方程组求解matlab实现(朴素高斯求解、LU分解、雅可比迭代方法、高斯-塞德尔方法、连续过松弛(SOR))
  5. html5画电池状态,HTML5的一个显示电池状态的API简介
  6. k近邻法的实现(kd树)-相关问题梳理
  7. 商业模式匹配乃同质化产品竞争终极大杀器
  8. openFeign服务调用
  9. property java_java-必须为元素类型“ property”声明属性“...
  10. 如何把视频文件转换成图片
  11. 修11代12代希捷坏道
  12. 中国科学院计算机致谢,央视评中科院博士论文致谢走红
  13. tpshop 阿里云短信sdk使用和带链接短信实现
  14. 三极管的缺点MOS管来补,把MOS管当作开关驱动大功率器件
  15. Java设计模式-代理模式笔记
  16. docker部署jupyterhub
  17. Uncaught (in promise)Error: ### Error updating database. Cause :java.sql.SQLException:
  18. Java基础二维数组
  19. 2-4_Date_Type_analysis
  20. IT小张:一台交换机和“隐秘的角落”不得不说的关系

热门文章

  1. 第四天2017/03/31(上午:指针、数组的小知识)
  2. Java的标签--弱化的goto
  3. MessagePack, Protocol Buffers和Thrift序列化框架原理和比较说明
  4. Java核心技术点之动态代理
  5. Java程序员从笨鸟到菜鸟之(十)枚举,泛型详解
  6. CS231n课程笔记翻译:图像分类笔记(上)
  7. 如何高效地阅读文献?
  8. 论文Very Deep Convolutional Networks for Large-Scale Image Recognition
  9. 牛顿方法、指数分布族、广义线性模型—斯坦福ML公开课笔记4
  10. 鸟哥的Linux私房菜(基础篇)-第二章、 Linux 如何学习(二.5. 重点回顾)