阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

初识Django

431次阅读
没有评论

共计 1889 个字符,预计需要花费 5 分钟才能阅读完成。

一、软件体系架构 (B/S、C/S)

1、B/S Browser/Server 浏览器与服务器

B 是英文单词“Browser”的首字母,即浏览器的意思;S 是英文单词“Server”的首字母,即服务器的意思。B/ S 就是“Browser/Server”的缩写,即”浏览器 / 服务器”模式

B/ S 结构是随着互联网的发展,web 出现后兴起的一种网络结构模式。这种模式统一了客户端,让核心的业务处理在服务端完成。你只需要在自己电脑或手机上安装一个浏览器,就可以通过 web Server 与数据库进行数据交互

图解
初识 Django

2、C/S Client/Server 客户端与服务器端

C 是英文单词“Client”的首字母,即客户端的意思,C/ S 就是“Client/Server”的缩写,即“客户端 / 服务器”模式

C/ S 结构是一种软件系统体系结构,也是生活中很常见的。这种结构是将需要处理的业务合理地分配到客户端和服务器端,这样可以大大降低通信成本,但是升级维护相对困难。比如我们手机中安装的微信、qq、王者荣耀等应用程序就是 C / S 结构

图解

初识 Django

3、B/ S 结构和 C / S 结构的区别

  1. 硬件环境不同,C/ S 通常是建立在专用的网络上,小范围的网络环境。而 B / S 是建立在广域网上的,适应范围强,通常有操作系统和浏览器就行
  2. C/ S 结构比 B / S 结构更安全,因为用户群相对固定,对信息的保护更强
  3. B/ S 结构维护升级比较简单,而 C / S 结构维护升级相对困难

二、Django 简介

1、概述

Django 发布于 2005 年,是当前 Python 世界里最负盛名且成熟的网络框架,最初用来制作在线新闻的 Web 站点

Django 是一个用 Python 编写的开放源代码的 Web 应用框架(源代码是开源的,遵守 BSD 版权),采用了 MVC 的框架模式,也有很多人把它称为 MVT(MTV)模式

官方网站:https://www.djangoproject.com/

2、优缺点

  • 优点

    1. 功能完善、要素齐全

      自带大量常用工具和框架(比如分页,auth,权限管理 ), 适合快速开发企业级网站

    2. 完善的文档

      经过十多年的发展和完善,Django 有广泛的实践案例和完善的在线文档。开发者遇到问题时可以搜索在线文档寻求解决方案

    3. 强大的数据库访问组件

      Django 的 Model 层自带数据库 ORM 组件,使得开发者无须学习 SQL 语言即可对数据库进行操作

    4. Django 先进的 App 设计理念:

      App 是可插拔的,是不可多得的思想。不需要了,可以直接删除,对系统整体影响不大

    5. 自带台管理系统 admin

      只需要通过简单的几行配置和代码就可以实现一个完整的后台数据管理控制平台

    6. Django debug 信息详尽

      很容易找出代码错误所在

  • 缺点

    1. 大包大揽

      对于一些轻量级应用不需要的功能模块 Django 也包括了,不如 Flask 轻便

    2. 过度封装

      很多类和方法都封装了,直接使用比较简单,但改动起来就比较困难

    3. 性能劣势

      与 C, C++ 性能上相比,Django 性能偏低,当然这是 python 的锅,其它 python 框架在流量上来后会有同样问题

    4. 模板问题

      django 的模板实现了代码和样式完全分离,不允许模板里出现 python 代码,灵活度对某些程序员来说可能不够

三、MVC 设计模式

1、概述:

一种软件设计典范,用一种业务逻辑,使数据,界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面与用户交互的同时,不需要重新编写业务逻辑

MVC 被独特的发展起来用于映射传统的输入,处理和输出功能在一个逻辑的图形化界面结构中

核心思想:解耦

优点:降低个模块之间的耦合性,方便变更,更容易重构代码,最大程度实现了代码的重用

图解:

初识 Django

2、MVC 编程模式(Model,View,Controller)

  • Model

    用于封装与应用程序的业务逻辑相关的数据及对数据的处理方法,是 Web 应用程序中用于处理应用程序的数据逻辑部分,Model 通常只提供功能性的接口,通过这些接口可以获取 Model 的所有功能

  • View

    负责数据的显示和呈现,View 是对用户的直接输出

  • controller

    负责从用户端收集用户的输入,可以看成提供 View 的反向功能,主要处理用户交互

四、MVT 编程模式

1、概述

与 MVC 没什么差别,也是各组件之间为了保持松耦合关系,只是定义上有些许不同

2、结构

  • Model

    负责业务对象与数据库(ORM)的对象

  • View

    负责业务逻辑,并在适当的时候调用 Model 和 Template

  • Template

    负责把页面展示给用户

注意 :Django 中还有一个 url 分发器(也可以叫做路由),主要用来将一个个 URL 页面的请求分发给不同的 View 进行处理,View 再调用相应的 Model 和 Template

3、Django 运行流程

初识 Django

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-05-26发表,共计1889字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7999586
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-4:飞牛NAS安装istore旁路由,家庭网络升级的最佳实践

星哥带你玩飞牛NAS-4:飞牛NAS安装istore旁路由,家庭网络升级的最佳实践

星哥带你玩飞牛 NAS-4:飞牛 NAS 安装 istore 旁路由,家庭网络升级的最佳实践 开始 大家好我是...
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

  星哥带你玩飞牛 NAS-16:飞牛云 NAS 换桌面,fndesk 图标管理神器上线! 引言 哈...
12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换...
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...