所谓的网络编程指的是多台主机之间的数据通讯操作。
网络编程简介
网络的核心定义在于:有两台以上的电脑就称为网络。实际上在世界上产生的第一台电脑之后就有人开始去思考如何生产更多的电脑并且进行有效连接。
网络连接的目的不仅仅是为了进行电脑的串联,更多的情况下是为了进行彼此之间的数据通讯,包括现在所谓的网络游戏本质上还是网络通讯的问题,而在通讯的实现上就产生了一系列的处理协议:IP、TCP、UDP等等,也就是说所谓的网络编程,实际上实现的就是一个数据的通讯操作而已,只不过这个通讯操作需要分为客户端和服务器端。
于是针对网络程序的开发就有了两种模型:
C/S(Client/Server、客户端与服务器端):要开发出两套程序,一套程序为客户端,另外一套为服务端,如果现在服务端发生了改变之后客户端也应该进行更新处理,这种开发可以由开发者自定义传输协议,并且使用一些比较私密的端口,所以安全性是比较高的,但是开发与维护成本比较高;
B/S(Browser/Server、浏览器与服务器端):只开发一套服务端的程序,而后利用浏览器作为客户端进行访问,这种开发与维护的成本较低(只有一套程序),但是由于其使用的是公共的HTTP协议并且使用的公共的80端口,所以其安全性相对较差,现在的开发基本上以“B/S”结构为主。
本次所要的网络编程主要就是C/S程序模型,其分为两种开发:TCP(可靠的数据连接)、UDP(不可靠的数据连接);