029_网络编程

Posted eternity-twinkle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了029_网络编程相关的知识,希望对你有一定的参考价值。

楔子

  你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运行,你就会发现,这两个python的文件分别运行的很好。但是如果这两个程序之间想要传递一个数据,你要怎么做呢?

  这个问题以你现在的知识就可以解决了,我们可以创建一个文件,把a.py想要传递的内容写到文件中,然后b.py从这个文件中读取内容就可以了。

  但是当你的a.py和b.py分别在不同电脑上的时候,你要怎么办呢?

  类似的机制有计算机网盘,qq等等。我们可以在我们的电脑上和别人聊天,可以在自己的电脑上向网盘中上传、下载内容。这些都是两个程序在通信。

软件开发的架构

  我们了解的涉及到两个程序之间通讯的应用大致可以分为两种:

  第一种是应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌面应用

  第二种是web类:比如百度、知乎、博客园等使用浏览器访问就可以直接使用的应用

  这些应用的本质其实都是两个程序之间的通讯。而这两个分类又对应了两个软件开发的架构~

1,C/S架构

  C/S即:Client与Server ,中文意思:客户端与服务器端架构,这种架构也是从用户层面(也可以是物理层面)来划分的。

  这里的客户端一般泛指客户端应用程序EXE,程序需要先安装后,才能运行在用户的电脑上,对用户的电脑操作系统环境依赖较大。

技术图片

2,B/S架构

   B/S即:Browser与Server,中文意思:浏览器端与服务器端架构,这种架构是从用户层面来划分的。

  Browser浏览器,其实也是一种Client客户端,只是这个客户端不需要大家去安装什么应用程序,只需在浏览器上通过HTTP请求服务器端相关的资源(网页资源),客户端Browser浏览器就能进行增删改查。

技术图片

 

以上是关于029_网络编程的主要内容,如果未能解决你的问题,请参考以下文章

「HTML+CSS」--自定义加载动画029

029_排序

通过jdbc执行sql比在plsql中慢好多

029_mac下nginx管理

(尚029)Vue_案例_交互footer组件功能

029_面向对象_02_面向对象的方式思考问题