python 网络编程二(软件开发的架构)
我们了解的涉及到两个程序之间通讯的应用大致可以分为两种:
第一种是应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌面应用
第二种是web类:比如百度、知乎、博客园等使用浏览器访问就可以直接使用的应用
这些应用的本质其实都是两个程序之间的通讯。而这两个分类又对应了两个软件开发的架构~
1.C/S
架构
C/S
即:Client
与Server
,中文意思:客户端与服务器端架构,这种架构也是从用户层面(也可以是物理层面)来划分的。
这里的客户端一般泛指客户端应用程序EXE
,程序需要先安装后,才能运行在用户的电脑上,对用户的电脑操作系统环境依赖较大。
2.B/S
架构
B/S
即:Browser
与Server
,中文意思:浏览器端与服务器端架构,这种架构是从用户层面来划分的。
Browser
浏览器,其实也是一种Client
客户端,只是这个客户端不需要大家去安装什么应用程序,只需在浏览器上通过HTTP
请求服务器端相关的资源(网页资源),客户端Browser
浏览器就能进行增删改查。