开发者学堂课程【Java 高级编程:网络编程简介】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/20/detail/428
网络编程简介
简介:网络的核心定义在于:有两台以上的电脑就称为网络。
实际上在世界产生第一台电脑的时候就有人提出如何将更多的电脑生产出来并且将其进行有效的连接。
网络连接的目的不仅仅是为了进行电脑的串联,更多的情况下是为了进行彼此之间的数据通讯,包括现在所谓的网络游戏在本质上还是网络通讯问题。
而在通讯的实现上就产生了一系列的处理协议 :IP、TCP、UDP等等,也就是说所谓的网络编程实际上实现的就是一个数据的通讯操作而已,只不过这个通讯操作需要分为客户端与服务器端。
针对于网络程序的开发就有了两种模型:
l C/S (Client / Server、客户端与服务器端):要开发出两套程序,一套程序为客户端,另外一套程序为服务器端,如果现在服务器端发生了改变之后客户端也应该进行更新处理。
这种开发可以由开发者自定义传输协议,并且使用一些比较私密的端口。
所以安全性是比较高的,但是开发与维护成本比较高;
l B/S (Browse/Server、浏览器与服务器端):只开发一套服务器端的程序,而后利用浏览器作为客户端进行访问,这种开发与维护的成本较低(只有一套程序) 。
但是由于其使用的是公共的HTTP协议并且使用的公共的 80 端口,所以其安全性相对较差,现在的开发基本上以“B/S”结构为主。
主要使用 CS 程序模型,其分为两种开发:TCP(可靠的数据连接)、UDP(不可靠的数据连接);