国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

string字符串轉(zhuǎn)json 有Protocol buffer這種輕便的序列化反序列化工具,Json為什么還會(huì)大量使用?

有Protocol buffer這種輕便的序列化反序列化工具,Json為什么還會(huì)大量使用?原因很簡(jiǎn)單:1,json是JavaScript原生支持的,沒(méi)有外部依賴(lài)2,json具有人眼可讀性3,開(kāi)發(fā)人員偷

有Protocol buffer這種輕便的序列化反序列化工具,Json為什么還會(huì)大量使用?

原因很簡(jiǎn)單:

1,json是JavaScript原生支持的,沒(méi)有外部依賴(lài)

2,json具有人眼可讀性

3,開(kāi)發(fā)人員偷懶

關(guān)于序列化的協(xié)議和框架,估計(jì)都可以出一本百科全書(shū)了,熱門(mén)一點(diǎn)的如:

xml、json、bson、Hessian、protocol buffers...

還有很多小眾冷門(mén)的,排名不分先后。

雖然有各種各樣的協(xié)議和框架,但序列化本質(zhì)上可以分為兩種:

  • 二進(jìn)制協(xié)議,如 bson、Hessian、protocol buffers等,將數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制形式。
  • 文本協(xié)議,如 xml,json 等,這類(lèi)協(xié)議將數(shù)據(jù)轉(zhuǎn)換為文本(字符串)的形式。

二進(jìn)制協(xié)議的優(yōu)點(diǎn)是體積小效率高,例如protocol buffers可以用將數(shù)據(jù)壓縮到位(bit),序列化和反序列化的性能也很好,非常適用于各種系統(tǒng)通訊和接口調(diào)用。

但問(wèn)題也在這里,二進(jìn)制數(shù)據(jù)幾乎沒(méi)有可讀性,所以在開(kāi)發(fā)和調(diào)試程序時(shí),對(duì)程序員來(lái)說(shuō)就比較痛苦,尤其是頻繁變化的數(shù)據(jù)結(jié)構(gòu)。

文本協(xié)議則剛好相反,數(shù)據(jù)體積大,性能差,卻能滿(mǎn)足可讀性要求。例如我們可以輕松看懂一段json,或者人肉構(gòu)造數(shù)據(jù)。 對(duì)于快速開(kāi)發(fā)和web開(kāi)發(fā)來(lái)說(shuō),可以提高開(kāi)發(fā)效率,開(kāi)發(fā)人員不用過(guò)多關(guān)注協(xié)議或者框架,專(zhuān)注業(yè)務(wù)。

我的觀點(diǎn)是:

1,對(duì)于業(yè)務(wù)穩(wěn)定,性能要求極高的場(chǎng)景,優(yōu)先使用 protocol buffers 等二進(jìn)制序列化協(xié)議

2,對(duì)于性能要求不高,業(yè)務(wù)變化頻繁的場(chǎng)景,優(yōu)先使用 json、xml 等文本協(xié)議