ASN.1をJSONを使用するのに適しているのはいつですか?どちらのアプローチの利点と欠点は何ですか?ASN.1とJSONの違いは何ですか?
6
A
答えて
15
ASN.1とJSONは厳密には比較できません。 JSONはデータ形式です。 ASN.1は、スキーマ言語に加えて、複数のエンコーディングルールセットであり、それぞれが特定のスキーマに対して異なるデータフォーマットを生成します。したがって、元の質問は、「XMLスキーマvs. XML:いつ使用するのが適切なのですか?」という質問と幾分平行しています。より公平な比較は、ASN.1とJSONスキーマの間で行われます。
- ASN.1は、バイナリ符号化規則を持っています、考慮すべきいくつかのポイントを語っ
。バイナリまたはテキストエンコーディングがアプリケーションに適しているかどうかを検討してください。
- ASN.1にはXMLエンコード規則もあります。必要に応じて、ASN.1を使用してテキストベースのエンコーディングを選択することもできます。
- ASN.1では、他のエンコードルールを開発することができます。実際、ASN.1をJSONにエンコードする独自の(標準化されていない)ルールを指定しました。私は弊社のWebサイトでこれについてブログしましたhere
- XMLスキーマの場合と同様に、ASN.1をコンパイルするためのツールがあります。これらは一般にデータバインディングツールと呼ばれます。コンパイラの出力は、データを保持するデータ構造と、さまざまなエンコーディング(バイナリ、XML、またはツールを使用する場合はJSON)との間でエンコード/デコードするためのコードで構成されています。
- JSONスキーマ用のデータバインディングツールがあれば、それは何か(もしあれば)はわかりません。私はまた、成熟した/安定したJSONスキーマがどれほど成熟していて安定しているのかわからない。
- JSONスキーマとASN.1の間で選択すると、JSONスキーマはJSONにバインドされますが、ASN.1は特定の表現にバインドされません。
2
C、C++、C#、Java、またはASN.1エンコーダ/デコーダエンジンを使用する他のプログラミング言語を使用して受信者に送信される可能性のあるメッセージをシリアル化する必要があるかどうかにかかわらず、ASN.1を使用できます。 ASN.1はまた、異なる状況下で利益を有する複数の符号化規則を提供する。たとえば、DERは、デジタル証明書などの標準的なエンコーディングが重要な場合に使用されます.PERは、携帯電話プロトコルなどの帯域幅が重要な場合に使用され、帯域幅を気にせずに使用する場合はE-XERが使用されますブラウザでの操作やXMLスキーマエンジンとのメッセージのやりとりのためにXMLでエンコーディングを表示する。
優れたASN.1ツールを使用すると、これらのASN.1エンコード規則を切り替えるためにアプリケーションコードを変更する必要はありません。単純な関数呼び出しで、使用したいエンコーディング規則を選択できます。
関連する問題
- 1. application/jsonとjsonの違いは何ですか?
- 2. JSON-LDとJSONスキーマの違いは何ですか?
- 3. JSONオブジェクトとJSONドキュメントの違いは何ですか?
- 4. Pythonの(1)と(1)の違いは何ですか?
- 5. javascriptのa + 1とa-1 +2の違いは何ですか
- 6. list [-1:] [0]とlist [len(list)-1]の違いは何ですか?
- 7. os.system( "timeout 1")とtime.sleep(1)の違いは何ですか? Python
- 8. x [1、1]とx.item(1,1)の違いは何ですか?
- 9. abolish/1とretractall/1の違いは何ですか?
- 10. /^ 1?$ /と/^1 $ /パターンマッチングの違いは何ですか?
- 11. O(1)とΘ(1)の違いは何ですか?
- 12. OpenSSL ASN.1プログラミングチュートリアル
- 13. perlでは、$ DB :: single = 1と2の違いは何ですか?
- 14. hl7 FHIR jsonスキーマの__assertedDateとassertedDateの違いは何ですか?
- 15. PDUのASN.1ヘクスダンプ
- 16. cin.ignore(1)との違いは何ですか?とcin.ignore(n)?
- 17. Groovyの1..5、[* 1..5]と[1..5]の違いは何ですか? Groovyで
- 18. JSON.NET DataContractJsonSerializerとNewtonsoft JSONシリアライザの違いは何ですか
- 19. gsonとjsonの違いは何ですか?
- 20. ejabberdのMAMプロトコルの0と1の違いは何ですか?
- 21. rubyのstring.split( "、" -1)とstring.split( "、"、 - 4)の違いは何ですか?
- 22. numpyの(N、)と(N、1)の違いは何ですか?
- 23. Goの[0]と[:1]の違いは何ですか?
- 24. Kotlinのコード1とコード2の違いは何ですか?
- 25. javascriptの++ iとi + 1の違いは何ですか?
- 26. グリーディデコーダRNNとk = 1のビームデコーダの違いは何ですか?
- 27. Cのiとi-1の違いは何ですか?
- 28. firstChildとchildNodes [1]の違いは何ですか?
- 29. e.target.parentNodeとe.path [1]の違いは何ですか
- 30. HEAD、HEAD ^、HEAD〜1との違いは何ですか?
JSONとJavaの関係は何ですか? –
JSONではJavaScript Object Notationを使用しています。 Javaがその名前の一部であっても、これはJavaとは何の関係もないと私は言っていますか? –
これは正しいJavaはJSONとは関係がありません。 – megazord