网络的产生
不同机器上的程序要通信,才产生了网络:凡是涉及到倆个程序之间通讯的都需要用到网络
软件开发架构
软件开发架构的类型:应用类、web类
应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌面应用
web类:比如百度、知乎、博客园等使用浏览器访问就可以直接使用的应用
一 客户端/服务器结构:C/S架构
客户端/服务器架构又称为c/s架构是编程中常用的架构模式之一
C/S即:Client与Server ,中文意思:客户端与服务器端架构,这种架构也是从用户层面(也可以是物理层面)来划分的。
这里的客户端一般泛指客户端应用程序EXE,程序需要先安装后,才能运行在用户的电脑上,对用户的电脑操作系统环境依赖较大。
1: 硬件C/S架构(打印机)
2:互联网中处处是C/S架构
腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频)
c/s架构的概念
c/s架构分为硬件系统和软件系统,但是不论是硬件还是软件系统都有一个共同点:服务器是一个软件或者硬件,用于向一个或者多个客户端提供服务
服务器存在的目的
服务器存在的唯一目的就是等待客户的请求,为这些客户服务,然后再等待其他的请求
二:浏览器服务器结构 B/S架构
B/S即:Browser与Server,中文意思:浏览器端与服务器端架构,这种架构是从用户层面来划分的。
Browser浏览器,其实也是一种Client客户端,只是这个客户端不需要大家去安装什么应用程序,只需在浏览器上通过HTTP请求服务器端相关的资源(网页资源),客户端Browser浏览器就能进行增删改查。
c/s 架构和socket之间的关系:
我们学习socket就是为了完成C/S架构的开发
网络基础
在网络上一个程序如何找到另一个程序
首先,程序必须要启动,
其次,必须有这台机器的地址,我们都知道我们人的地址大概就是国家\省\市\区\街道\楼\门牌号这样字。那么每一台联网的机器在网络上也有自己的地址,它的地址是怎么表示的呢? 就是使用一串数字来表示的,例如:100.4.5.6
IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。 IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。