通信、数据、平台无关性(类型 编码 格式)
平台无关性:
byte;
json;
unicode编码;
char串;
数据结构的语言相关性:
iOS:NSDictionary;
java: HashMap
同一种格式的数据,在不同的语言环境中有不同的表现形式;
要在不同的语言环境间通信,需要一个双方都能接受的转换空间,实现不同语言环境中数据类型的统一。
因为通信的双方是基于不同的平台和不同的语言环境的,所以通信时需要双方都能接受的格式和数据形式。
通信时通信层传输的数据应该是平台语言无关的。这就要求它们是bytes。
数据格式的层级:
组织格式(图片存贮文件:基于无编码)(json:基于编码)
编码格式:(无编码:byte))(uncode编码:人类可阅读符号);
byte:(底层,与平台格式无关)。
通信层与应用层:
通信层:要求的数据与语言平台都无关系。
应用层:需要知道数据的组成格式。
这就要求有额外的信息来说明数据格式类型;
在http协议中使用content-type标示。
在tcp协议中无相关字段,所以需要通信双方通过其它渠道协商。
http协议缺省使用utf8编码来表述控制头信息。
我思故我在