1.软件的分类
软件:计算机中按照特定的顺序组织的计算机数据和指令的集合,是一个或者一些功能实现的集合,换言之软件就是计算机中可运行的程序。
软件在计算机中一般分为三大类:系统软件,应用软件,以及介于这两者之间的软件。
1.1系统软件
直接安装在计算机硬件上的进行数据交互的大型软件,是对计算机硬件的第一次扩展,其他软件都是在系统软件上运行的。
常见的系统软件有:windows、Android、iOS、Linux、Ubuntu等
1.2应用软件
安装在操作系统之上,用来完成某个或者某些功能的软件,我们常常说的软件大多数时候指的就是应用软件,如 office、浏览器、聊天软件等
1.3应用软件的分类
- 对应用软件安装是否可以 上 (联 )来分,可以得到两大类:单机软件和 络软件。
- 安装是否需要本地安装客户端, 也可以得到两大类:C/S 架构软件和 B/S 架构软件。
1.3.1 C/S结构软件
C/S (Client/Server)结构,即客户机和服务器结构。该类软件由两部分组成,client(客户端)和 server(服务器端)组成。用户一般需要先下载安装客户端,之后使用客户端来连接服务器,如 QQ、微信、MySQL 数据库等。
1.3.2 B/S结构软件
B/S(Browser/Server)结构即浏览器和服务器结构。该类软件一般之后服务器端(server),而客户端由第三方提供的浏览器(browser)提 供,用户使用的时候,不需要下载安装客户端,只要安装了浏览器即可。用户通过浏览器来 访问服务器,浏览器就是界面和客户端。
【扩展】C/S 结构和 B/S 结构软件的优点和缺点。
C/S 优点和缺点
优点:
- 界面和操作可以很丰富
- 安全性能可以很容易保证,实现多层认证也不难
- 由于只有一层交互,因此响应速度较快。
缺点:
- 适用面窄,通常用于局域 中。
- 用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。
- 维护成本高。发生一次升级,则所有客户端的程序都需要改变。
B/S优点和缺点
优点:
- 客户端无需安装,有Web浏览器即可。
- B/S架构可以直接放在广域 上,通过一定的权限控制实现多客户访问的目的,交互性较强。
- B/S架构无需升级多个客户端,升级服务器即可。
缺点:
- 在跨浏览器上,B/S架构不尽如人意。
- 表现要达到C/S类型软件的程度需要花费不少精力。
- 在速度和安全性上需要花费巨大的设计成本,这是B/S架构的最大问题。
2.WEB软件
web软件是一种基于web为其数据交互的计算机软件。该类型软件,通过web万维 的数据交互协议,通过 络进行数据传输,主要目的是高效率的的跨平台、跨地区数据共享。
3.协议
协议:是一种共同协商、计议之后通过的一种约定。
络协议:互联 中的不同主机之间互相传递数据的一种约定,由 OSI 组织定义协议的 描述模型(通常称为 7 层 络传输模型),规范 络传输的各种协议性质。
OSI 模型层 | 功能描述 | 涉及协议 |
应用层 Application layer | 文件传输、电子邮件等等 | FTP/TFTP/HTTP/SMTP/ DNS/Telnet. |
表示层 Presentation layer | 数据格式化、代码转换 数据加密等等 | 无 |
会话层 Session layer | 建立或者解除与其他节点 之间的联系 | 无 |
传输层 Transport layer | 提供端对端的接口 | TCP/UDP |
络层 Network layer | 数据包传输路由 | |
数据链路层 Datalink layer | 传输有地址的帧 错误检测功能 | |
物理层 Physical layer | 二进制数据在物理媒体上 的传输 | 中继器/集线器/双绞线 |
web 开发时使用的 络传输协议
协议名称 | 描述 |
IP协议 | 是将多个包交换 络连接起来,在源地址和目标地址之间传输数据包并对 数据包进行拆分和重组以适应不同的 络大小 |
TCP协议 | Transmission Control Protocal 传输控制协议 一种端对端的、可靠的、基于 IP 的传输层协议 特点:3 次握手建立连接;4 次挥手断开连接 |
UDP协议 | User Datagram Protocal 用户数据 协议 一种无连接的传输层协议 |
FTP协议 | File Transfer Protocal 文件传输协议 TCP/IP 协议族中的一种 特点:FTP 协议包含两部分[服务器][客户端 |
SMTP协议 | Simple Mail Transfer 简单邮件传输协议 TCP/IP 协议族中的一种 邮件发送服务协议 |
POP3协议 | Post Office Protocal-Version3 邮局协议版本 3 TCP/IP 协议族中的一种 |
HTTP协议 | HyperText Transfer Protocal 超文本传输协议 |
HTTPS协议 | HyperText Transfer Protocal over Secure Socket Layer 安全 HTTP 协议通道,简称安全的超文本传输协议 |
超文本传输协议(HTTP)
HTTP(HyperText Transfer Protocol),是互联 上应用最为广泛的一种 络协议。
所有的 WWW 文件都必须遵守这个标准。 设计HTTP最初的目的是为了提供一种发布和接收 HTML 页面的方法。是一个基于TCP/IP通信协议来传递数据,一个属于应用层的面向对象的协议 。浏览器作为HTTP客户端通过URL向HTTP服务端即 WEB 服务器发送所有请求。Web 服务器根据接收到的请求后,向客户端发送响应信息。
主要特点:简单快速,无连接,无状态,支持 B/S 及 C/S 模式。
URI 与 URL
URI(Uniform Resource Identifiers) :统一资源标识符,HTTP 使用 URI 来传输数据和建立连接。
URL(Uniform Resource Locator) :统一资源定位器,是一种特殊类型的 URI,包含了用于查找某个资源的足够的信息。
HTTP 请求方式
客户端向服务器发送数据请求,根据请求的性质区分不同的请求方式
HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD 方法
HTTP1.1 新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 协议,也就是说现在共有 8 种不同的请求方式
? OPTIONS:返回服务器对指定资源数据支持的HTTP请求方法,一般用于测试服务器功能的可用性
? HEAD:返回服务器上对指定资源数据的HTTP请求头,在不需要返回全部数据的情况下测试指定功能的可用性
? GET:向服务器请求指定的资源
? POST:向服务器提交数据请求处理,数据被包含在请求体中
? PUT:向服务器上传指定的数据
? DELETE:向服务器发送请求删除指定数据
? TRACE:回显服务器收到的请求,主要进行功能测试诊断
? CONNECT:HTTP1.1 协议中预留请求方式,可以将连接改为管道方式的代理服务器
GET 和 POST 的区别
1、 提交参数的位置不同:
GET 提交的数据会放在 URL 之后,以割URL和传输数据,参数之间以&相连,如 http://www.baidu.com/testname=test&id=123456。
POST方法是把提交的数据放在 HTTP 包的 Body 中。
2、提交参数的大小不同(理论上,存在争议) :
GET 提交的数据大小有限制(因为浏览器对 URL 的长度有限制),这点要根据实际情 况而论,目前浏览器种类比较多,不同的浏览器大小限制不同。 而 POST方法提交的数据理论上没有限制,但是不建议太大。
3、安全问题上:
GET 方式提交数据,会带来安全问题,因为参数是裸露在地址栏上,所以较不安全。 POST 方式参数在 body 中,所以安全性较高(注意:只是较高,不是很安全,在 http 协议下,不管哪种提交方式,都是明码提交,只要有抓包工具,都能抓取数据的!!!)
4、是否浏览器可以收藏GET请求因为参数在地址栏上,因此可以收藏(因为参数也会保存啊)。而 POST 请求不行,不能被浏览器收藏,因为参数无法被浏览器保存。
web 开发行业术语
硬件:组成计算机的各种元器件,如 CPU、硬盘、键盘、鼠标等。 服务器:专门用于提供 络数据访问服务的主机。 客户端:发起请求访问数据的主机的计算机软件。
络:有大量计算机和 络介质组成,用于计算机间进行数据交互。 协议:访问数据的数据编码及传输方式或者规定。
软件 web 服务器:专门将指定大数据共享在 络中的一种数据容器软件 web 程序:可以在 络上访问并且进行数据处理的程序 web 接口:浏览器通过 url 地址可以访问调用的一个函数或者方法
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树Web应用开发 Django210992 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!