通信、数据、平台无关性(类型 编码 格式)

平台无关性:

byte;

json;

unicode编码;

char串;

数据结构的语言相关性:

iOS:NSDictionary;

java:  HashMap

同一种格式的数据,在不同的语言环境中有不同的表现形式;

要在不同的语言环境间通信,需要一个双方都能接受的转换空间,实现不同语言环境中数据类型的统一。

因为通信的双方是基于不同的平台和不同的语言环境的,所以通信时需要双方都能接受的格式和数据形式。

通信时通信层传输的数据应该是平台语言无关的。这就要求它们是bytes。

数据格式的层级:

组织格式(图片存贮文件:基于无编码)(json:基于编码)

编码格式:(无编码:byte))(uncode编码:人类可阅读符号);

byte:(底层,与平台格式无关)。

通信层与应用层:

通信层:要求的数据与语言平台都无关系。

应用层:需要知道数据的组成格式。

这就要求有额外的信息来说明数据格式类型;

在http协议中使用content-type标示。

在tcp协议中无相关字段,所以需要通信双方通过其它渠道协商。

http协议缺省使用utf8编码来表述控制头信息。

原文地址:https://www.cnblogs.com/feng9exe/p/7070264.html