Ich habe eine Klasse, die ein Objekt in einem Format 20% kleiner als json codiert, und es ist nicht binär. Jetzt möchte ich es irgendwo hinstellen, damit die Leute es benutzen können. Wo sollte ich es posten?Wo soll ich meine AS3-Klasse veröffentlichen?
Hier ist ein Beispiel-Objekt in JSON codiert:
{"glossary":{"GlossDiv":{"GlossList":{"GlossEntry":{"GlossTerm":"Standard Generalized Markup Language","Abbrev":"ISO 8879:1986","ID":"SGML","GlossDef":{"GlossSeeAlso":["GML","XML"],"para":"A meta-markup language, used to create markup languages such as DocBook."},"Acronym":"SGML","SortAs":"SGML","GlossSee":"markup"}},"title":"S"},"title":"example glossary"}}
Und hier ist es in meinem Format:
glossary{GlossDiv{GlossList{GlossEntry{GlossDef{GlossSeeAlso[GML XML]para"A meta-markup language, used to create markup languages such as DocBook."}GlossTerm"Standard Generalized Markup Language"GlossSee markup ID SGML Acronym SGML Abbrev"ISO 8879:1986"SortAs SGML}}title S}title"example glossary"}
In JSON ist die String-Länge 360, und in meinem Format ist 299
(Wie Sie sehen, setzt mein Format nur Anführungszeichen um die Kennung, wenn es Leerzeichen oder Sonderzeichen enthält, kann es alles kodieren, was JSON kann)
Hierist ein Beispiel lesbaren String:
JSON:
{
"glossary": {
"title": "example glossary",
"GlossDiv": {
"title": "S",
"GlossList": {
"GlossEntry": {
"ID": "SGML",
"SortAs": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Acronym": "SGML",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
}
}
}
}
Mein Format:
"glossary" {
"title" "example glossary"
"GlossDiv" {
"title" "S"
"GlossList" {
"GlossEntry" {
"ID" "SGML"
"SortAs" "SGML"
"GlossTerm" "Standard Generalized Markup Language"
"Acronym" "SGML"
"Abbrev" "ISO 8879:1986"
"GlossDef" {
"para" "A meta-markup language, used to create markup languages such as DocBook."
"GlossSeeAlso" [
"GML"
"XML"
]
}
"GlossSee" "markup"
}
}
}
}
(Zitate sind optional auf den meisten Strings)
JSON beliebt ist nicht nur, weil es vergleichsweise kompakt liefert von Packaging-Objekten (dann zum Beispiel XML), sondern auch, weil es zum Beispiel mit JavaScript kompatibel ist und über eine Vielzahl von Entwicklungswerkzeugen und Plattformen unterstützt wird. Etwas im Sinn. – jayarjo
Ist Ihr Format auch so viel kompakter als JSON? Was würden 60 oder 100 zusätzliche Zeichen zum Traffic hinzufügen, wenn bereits Hunderte von Kilobytes nicht wirklich zählen. – jayarjo
Nun, wenn Sie mit einem Multiplayer-Spiel arbeiten, sind die Pakete viel größer als das, und jedes Byte zählt. Wenn Sie es in ein binäres Socket schreiben und es dann deflate, ist es noch kleiner, 80 Bytes. –