一、Web开发介绍
- 目前Web开发属于Browser/Server模式,简称BS架构,开发语言有(Python、PHP、Java …)。
- 基于Python的Web工作原理如下:
二、框架介绍
1.什么是框架?
- 软件框架就是为实现或完成某种软件开发时,提供了一些基础的软件产品。
- 框架的功能类似于基础设施,提供并实现最为基础的软件架构和体系。
- 通常情况下我们依据框架来实现更为复杂的业务程序开发。
- 二个字,框架就是程序的骨架。
【个人理解】:比如Django 框架、springboot、springcloud 等,其主要的作用就是提供给开发者一些基础的平台或者“轮子”,为开发提供便利,减少开发成本,提高开发效率。
2.框架的优缺点
- 可重用
- 成熟,稳健
- 易扩展、易维护
【个人理解】:其实不同的框架,应该是有自己的优缺点的,这里指的是任何框架这个概念的优缺点(不知道我有没有表达清楚),所以大家在新建项目的时候,针对框架的选型要考虑清楚。
3. Python中常见的框架
- 大包大揽 Django 被官方称之为完美主义者的Web框架。
- 力求精简 web.py和Tornado
- 新生代微框架Flask和Bottle
4.Web框架中的一些概念
- MVC
1. 大部分开发语言中都有MVC框架
2. MVC框架的核心思想是:解耦
3. 降低各功能模块之间的耦合性,方便变更,更容易重构代码,最大程度上实现代码的重用
4. m表示model,主要用于对数据库层的封装
5. v表示view,用于向用户展示结果
6. c表示controller,是核心,用于处理请求、获取数据、返回结果 - MVT
1. Django是一款python的web开发框架
2. 与MVC有所不同,属于MVT框架
3. m表示model,负责与数据库交互
4. v表示view,是核心,负责接收请求、获取数据、返回结果
5. t表示template,负责呈现内容到浏览器
【个人理解】:不知道是不是我的理解有误,如果有的话,希望大佬们指正。据我前期所知,现在比较流行的是 前后端分离架构和微服务架构 ,MVC是属于比较老的一种架构了
三、Django框架介绍
- Django是一个高级的Python Web框架,它鼓励快速开发和清洁,务实的设计。
- 由经验丰富的开发人员构建,它负责Web开发的许多麻烦,因此您可以专注于编写应用程序,而无需重新创建轮子。
- 它是免费的和开源的。
- 被官方称之为完美主义者的Web框架。
- Django可以更快地构建更好的Web应用程序并减少代码。
官方网址:https://www.djangoproject.com/
你可以根据需要进行语言切换和版本切换,该官方的指导手册整体来说还是比较详细的,可参考性较强。
1.Django框架的特点:
- 快速开发:Django的宗旨在于帮助开发人员快速从概念到完成应用程序。
- 安全可靠:Django认真对待安全性,帮助开发人员避免许多常见的安全错误。
- 超可伸缩性:Web上的一些最繁忙的网站利用了Django快速灵活扩展的能力。
2.Django可以使用什么Python版本?
四、Django的安装
作为Python Web框架,Django需要Python,在安装Python同时需要安装pip。下面以centos
系统为例:【注】以下使用python3命令是由于centos里面默认安装了python2。
方式1:使用pip
命令进行安装
- 若没有安装python,请先安装python,若有python,根据需要安装Python3
yum install -y python3
- 若没有安装pip,请先安装python,若有pip,根据需要安装pip3
sudo yum -y install epel-release #先安装扩展源EPEL
yum install -y python-pip #安装pip
yum install -y python3-pip #安装pip3
在线安装Django,指定版本安装,目前2.2的最新版为2.2.13
pip3 install django==2.2.* #使用pip install django==2.2.* 可能会由于版本过低而报错
检测当前是否安装Django及版本
python3 -m django --version
方式2:使用源码进行安装
下载源码包:[https://www.djangoproject.com/download/]
输入以下命令并安装:
tar xzvf Django-X.Y.tar.gz # 解压下载包
cd Django-X.Y # 进入 Django 目录
python setup.py install # 执行安装命令
安装成功后 Django 位于 Python 安装目录的 site-packages 目录下。
声明:本次学习知识参考《菜鸟教程》、《拉勾教育》、《B站》等。