加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 移动互联 > 应用 > 正文

软件的结构与网络基础

发布时间:2022-12-03 09:36:00 所属栏目:应用 来源:未知
导读: 文章目录
一、软件结构 什么是软件:
软件,国际中对软件的定位:与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档以及数据。
其他定义:
1.运行时,能够提供所要求

文章目录

一、软件结构 什么是软件:

软件,国际中对软件的定位:与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档以及数据。

其他定义:

1.运行时,能够提供所要求功能和性能的指令或计算机程序集合。

2.程序能够满意地处理信息的数据结构。

3.描述程序功能需求以及程序如何操作和使用所要求的文档。

以开发语言作为描述语言,可以认为:软件=程序+数据+文档(代码也可理解成是一种文档)

二、常见的软件表现形式 三、程序架构 C/S架构

C/S架构:Client/Server(客户端/服务器)结构 需要服务器端部署;用户单独安装客户端,客户端软件升级,服务器端要为每个用户服务!!!可以单机不联网使用。

软件应用程序_开发手机程序及移动应用_51单片机c程序应用实例详解

业务逻辑主要放在了客户端(服务端也许会有部分业务逻辑需要处理),服务端主要做数据存储。

优点

充分发挥客户端计算机处理能力,客户端能将用户请求处理后再提交给服务器,将用户请求处理之后再提交给服务器; 将服务器提供的数据处理后再以某种方式显示给客户,所以客户端的响应速度较快,网络通信量低。

缺点

因为业务逻辑处理主要集中在客户端,所以应用需求只要发生变化,就必须对客户端和服务器端的应用程序进行修改,服务器端应用程序修改比较容易,主要是服务器数量少,而且涉及数据存储改动量较小,但是新的客户端应用程序需要重新分发给所有的用户,工作量大。而且,开发客户端往往是针对某一操作系统编写的。如适用于Windows操作系统的软件,通常不适用于Linux,而且就算都是Windows系统,WindowsXP下能运行,但在Windows10下就未必了。

B/S架构

B/S架构是Browser/Server的缩写,翻译过来就是“浏览器/服务器”。

软件应用程序_51单片机c程序应用实例详解_开发手机程序及移动应用

优点

B/S架构解决了C/S架构存在的部分问题,首先没有客户端的差异,用户只需要安装浏览器,无须另外安装客户端。如果应用的业务逻辑发生变化,只需要更新服务端的应用程序就可以了。其次,客户端将不受到操作系统的限制,目前主流的浏览器往往在多种操作系统下都有对应的版本可供使用。

缺点

增加了服务器的负担,因为业务逻辑集中在服务器端,服务器需要对不同用户的多次请求都做出响应,同时又要对数据库进行维护,工作量较大。

四、软件组成

软件一般分为:前端和后端

前端

前端主要的作用就是与用户交互,接收用户输入并发送给后端,接收后端返回的数据,友好的展示给客户。

这里就跟前台和后台不一样。(前台、后台一般指的是业务层,比如淘宝前台展示给买家,后台展示给卖家,后台和前台只是业务逻辑上的区别,与软件组成无瓜,有的程序只有前台而没有后台)

常用技术:Html,Css,JavaScript等

后端

后端的作用主要是:处理消息,生成结果,存储数据。

常用技术:Java,C,C++,Python,Go等

后端常用架构:单体架构、垂直架构、分布式架构、微服务架构

五、网络基础 域名

由于IP地址具有不方便记忆并且不能显示地址组织的名称和性质等缺点,人们涉及出了域名,并通过网络名称系统(DNS,Domain Name System)来将域名和ip地址相互映射,使人更方便地访问互联网软件应用程序,而不用去记住能够被机器直接读取的IP地址数串。

特点和作用就是:方便记忆

某种意义上来说:域名=IP,只是表现形式不一样

IP

百度IP可找到自己家的公网IP,意味着我家在互联网上的一个地址(一般家用网络不能用作为服务器,运营商限制了端口)

少数电脑连成的局域网,每一台连接的设备都会有一个局域网IP

127.0.0.1

localhost

端口

服务器有65535个端口(65535为2的16次方减1)

常用端口 OSI七层模型

OSI(Open System Interconnect),即开放式系统互连。一般都叫OSL参考模型,是ISO组织在1985年研究的网络互连模型

开发手机程序及移动应用_51单片机c程序应用实例详解_软件应用程序

TCP/IP协议

TCP/IP参考模型最多划分了5个层次,分别是物理层,数据链路层,网络层,传输层和应用层;

划分4个层次则为:应用层,传输层,网际互联层,网络接口层;

在层次结构上,相同之处:都采用了分层体系结构;不同之处:TCP/IP参考模型比OSI参考模型更简化。

51单片机c程序应用实例详解_开发手机程序及移动应用_软件应用程序

三次握手四次挥手

TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接。

软件应用程序_开发手机程序及移动应用_51单片机c程序应用实例详解

三次握手

开发手机程序及移动应用_软件应用程序_51单片机c程序应用实例详解

为什么要使用三次握手

1、在第一次通信过程中,A向B发送信息之后,B收到信息后可以确认自己的收信能力和A的发信能力没有问题。

2、在第二次通信中,B向A发送信息之后,A可以确认自己的发信能力和B的收信能力没有问题,但是B不知道自己的发信能力到底如何,所以就需要第三次通信。

3、在第三次通信中,A向B发送信息之后,B就可以确认自己的发信能力没有问题。

四次挥手

开发手机程序及移动应用_软件应用程序_51单片机c程序应用实例详解

为什么连接的时候是三次握手,关闭的时候却是四次挥手?

1、因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中

ACK报文是用来应答的,SYN报文是用来同步的。

2.但是关闭连接时,当Server端收 到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先

回复一个ACK报文, 告诉Client端 ,"你发的FIN报文我收到了"。

3、只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故

需要四步握手。

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!