我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

对于程序员来说,有很多现成的框架可以用于Web开发,比如,Flask等。其中,可能是最全面,最受欢迎的。世界上最大的在线视频网站和最大的照片分享网站都是使用开发的。

作为一个 Web 框架,它内置了一整套工具,开箱即用。它也被称为“完美主义者的最后一个框架”。如果你想找一份 Web 开发工作,它可能是你最需要掌握的技能。

安装Python库_如何安装Python_python django 安装

今天给大家推荐一门课程——《Web框架入门》,它没有高深的概念,没有大段难懂的代码,引导你从零开始接触Web开发,掌握MVT模型、模型类、数据模型关系、数据表、HTTP请求、&、后台管理等知识点。

访问“实验室建设”官方网站即可了解课程的全部内容。

(本课程是为初学者编写的,如果你已经非常擅长,那么本课程不适合您。如果你是初学者,阅读文档很头疼,来吧,让我们开始吧。)

第一章:框架介绍及安装实验介绍

作为入门课程,本课程将详细介绍该框架在Web开发过程中的应用,包括MVT模型、模型类的编写、数据模型关系、创建数据表、路由基础知识、HTTP请求方法、视图函数的创建、模板文件的配置以及后台管理功能。

在本次实验中我们主要来了解什么是BS架构,MVT框架的组成,以及框架的引入和安装。

知识点 什么是BS架构

要理解什么是 BS 架构,我们必须先了解什么是架构。

建筑意味着什么?我们为什么需要建筑?

大家都知道编程默认的原则之一就是 Don’t,也就是不要重复代码,简称“DRY 原则”。在编程的早期,人们创建函数就是为了避免重复代码:

# 举个简单的例子,以下为 Python 代码
>>> print('Hello, I am {}'.format('小明'))
Hello, I am 小明
>>> print('Hello, I am {}'.format('詹姆斯'))
Hello, I am 詹姆斯
>>> print('Hello, I am {}'.format('周芷若'))
Hello, I am 周芷若
>>>
# 为了避免重复,创建一个 hello 函数
>>> def hello(name):
... 	print('Hello, I am', name)
...
...
>>> hello('小明')
Hello, I am 小明
>>> hello('詹姆斯')
Hello, I am 詹姆斯
>>> hello('周芷若')
Hello, I am 周芷若
>>>

后来一些编程语言引入了面向对象的概念,把一些常用的功能放到类中,称之为方法。实例化类,利用实例的属性或方法来实现一些功能。这样在稍微复杂的场景下,可以更有效的避免编写重复的代码:

>>> class Student:
... 	def __init__(self, name, age):
... 		self.name = name
... 		self.age = age
...
... 	def hello(self):
... 		print('Hello, I am', self.name)
...
...
...
>>> st = Student('Nash', 12)
>>> st.hello()
Hello, I am Nash
>>>

当场景变得复杂时,代码会在多个类中重复,为了优化,就出现了继承的概念,子类继承父类,拥有父类所有的属性和方法(双下划线的私有属性除外)。

以上这些都很自然,在基础编程中随处可见,尽管它们是一代又一代程序员总结创新的结果。

在更加复杂的情况下,人们为了避免重复工作,提高工作效率,提出了设计模式的概念。好的设计模式不仅可以在实际应用中避免编写重复的代码,还可以使程序的运行效率更高,更易于维护和功能更新。

设计模式是一个很宽泛的概念,这里面包含一个概念叫“架构模式”。架构模式有很多种,比如分层模式就是很常见的一种,在网络编程中肯定会提到。大家熟知的IOS七层模型就是一种分层架构。分层架构将一个数据传输模型划分为若干层,每一层都使用独特的协议对数据进行打包或者转换,然后传递给下一层,最后将它们组合起来完成数据传输。

设计模式中还有一个概念叫“客户端/服务器模型”。一个服务器对应多个客户端:客户端发起服务请求,服务器提供服务。比如我们日常生活中使用的影音软件,我们在手机或者电脑上下载安装客户端APP,注册登录后就可以听音乐、看电影了。在这个模型中,客户端向服务器发送请求,服务器返回相应的资源给客户端。

这个模型叫做CS架构模型,我们要了解的BS架构是这个模型的一个特例。

BS架构是使用浏览器作为客户端向服务器发送请求的模型,这种模型的优点是用户不需要安装单独的客户端,只需要一个浏览器就可以访问任意一个服务器。在CS架构中,客户端需要时时更新以支持服务器提供的最新特性,而在BS模型中,服务器只需要对浏览器进行适配和开发。

我们手机上安装的各种APP更新频繁,有时候需要更新后才能使用,急需用的时候还要等待新版本下载安装,很烦人。BS架构下就没有这样的烦恼,浏览器更新频率也比较低。

MVT 模式

简单描述一下一个完整的浏览器页面打开操作:

作为用户,我们只使用浏览器,并不关心服务器如何工作。作为 Web 开发人员,我们要做的就是开发服务器。

如上图所示,当我们用浏览器打开实验楼网站的课程页面时:

MVT框架如下图所示:

视图函数接收到浏览器的请求后,首先接受该请求,视图函数需要模板配合处理请求,模板提供了页面所有的静态资源,包括HTML、CSS、JS数据,是渲染页面的基础数据。页面中的动态数据,比如课程名称、简介、学生人数等,都需要从数据库中获取,这就需要创建模型类(也叫映射类)来与数据库进行交互。

视图函数为View,模型类为Model,前端模板为MVT,这种设计模式就称为MVT设计模式。

介绍

它是一个由编写的开源Web应用程序开发框架。它采用MVT软件设计模式,即模型(Model)、视图(View)和模板()。它最初是为了管理一个新闻网站而开发的,并于2005年以BSD许可作为开源发布。该框架以一位比利时吉普赛吉他手的名字命名。

主要目标是简化复杂且依赖数据库的网站的开发过程。它注重组件之间的低耦合,并遵循 DRY 原则。

该框架的核心包括:

同时内置了一些新闻网站基本、实用的应用程序:

在使用Web开发的时候,除了程序员之外,还有很多框架可以选择:

还有几个小众框架,它们都有一些独特的功能,但它们在商业用途上的未来并不光明。对于 Web 开发,小型网站会使用 Flask,大型网站也会使用它。

安装

作为一个Web开发框架,安装自然非常简单,使用pip包管理工具一步即可完成。

.5以及对应的包管理工具pip3已经在实验环境中安装了,我们首先在终端命令行中更新pip3:

$ cd ~
$ sudo pip3 install -U pip

操作截图如下:

为了彻底起见,我们要为项目创建一个虚拟环境。切换到 ~/Code 目录,更新库,然后创建一个名为 venv 的虚拟环境:

$ cd Code
$ sudo pip3 install -U virtualenv
$ virtualenv -p python3 venv

操作截图如下:

进入虚拟环境,安装最终版本2.2.9:

$ source venv/bin/activate
$ pip install django==2.2.9
$ pip freeze | grep -i django

操作截图如下:

如上图所示,在终端中执行pip命令可以查看虚拟环境中安装了哪些工具包以及其对应的版本号。

已经安装完毕,存在于虚拟环境venv中,另外我们还需要安装其他一些基础工具包,先安装这两个,其他的在需要的时候再安装:

$ pip install ipython mysqlclient

安装完成后最好再次执行命令进入虚拟环境,激活新安装的工具包,执行pip可以查看已经安装的各个包以及其依赖包:

$ source venv/bin/activate
$ pip freeze

操作截图如下:

目前,各项准备工作已全部完成。

总结

通过本次实验,我们了解了什么是BS架构,为什么要用架构,架构的作用是什么。此外,还了解了MVT模式的设计思想以及视图函数、模板、模型类之间的协调关系。最后了解了框架的核心功能和优势以及在实验环境中安装的操作。

在下一个实验中我们将学习如何创建一个Web项目。

篇幅有限,后续课程内容,请大家在实验楼边敲代码边学习吧~

你将学习:

python django 安装_安装Python库_如何安装Python

二维码
扫一扫在手机端查看

本文链接:https://by928.com/4415.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线