Vergleich des JSON Parsers für Objective-C (JSON Framework, YAJL, TouchJSON, etc.)

Soweit ich weiß, gibt es drei JSON-Parser für Objective-C, JSON-Framework , YAJL und Touch-JSON . Dann hätten diese drei ihre eigenen Eigenschaften.

Beispielsweise:
YAJL kann als SAX-Stil-Parser verwendet werden.
JSON Framework hat eine relativ lange Geschichte und ist weit verbreitet.
Touch JSON analysiert NSData anstelle von NSString.

Soweit ich getestet habe, ist das Ergebnis des performancesvergleichs wie folgt:
[fast] YAJL> JSON Framework> Berühren Sie JSON [langsam].

Wenn Sie die Vor- und Nachteile dieser JSON-Parser kennen, können Sie mir das sagen?
Zu guter Letzt, wenn Sie einen anderen JSON-Parser kennen, sagen Sie es mir bitte.

Wenn Sie nach Geschwindigkeit suchen, casting Sie einen Blick auf JSONKit . Es ist (normalerweise) viel schneller als die bereits erwähnten JSON-Bibliotheken, oft eine Größenordnung schneller. Und wegen seines “kürzlich instanziierten Objektcaches” wird es (wiederum normalerweise) auch weniger Speicher verwenden.

In Anbetracht eines Vergleichs, den ich gemacht habe , ist die schnellste Bibliothek JSONKit, gefolgt von NSJSONSerialization (jetzt öffentliche API) und NextiveJSON. SBJSON und TouchJSON sind etwas langsamer als die vorherigen 3 Bibliotheken.

Der Vergleich wurde mit einem iPhone 4S mit iOS 5.0.1 durchgeführt.

Es gibt auch diesen Parser :

Ich kann mich nicht daran erinnern, wie ich über dieses Thema gestolpert bin, aber es sah leicht und einfach aus, also dachte ich, dass es meinen Bedürfnissen entspricht. I-Ereignis hat es gegabelt, um Initialisierung von NSData hinzuzufügen. Da ich kleine Antworten parsen musste, war mir die performance egal. Es wäre interessant zu wissen, wie es funktioniert.

Ich denke, JSONKit ist schneller als YAJL und YAJL ist schneller als Touch JSON und IOS5 class NSJSONSerialization-class ist viel schneller. NSJSONSerialization muss keine Drittanbieter-APIs verwenden.

Sieh dir diesen Beitrag an . <30 Zeichen>

Wenn Sie nach einem Serializer von NSObject zu JSON und umgekehrt suchen, sollten Sie OBJC JSONSerializer auschecken

Werfen Sie einen Blick auf die Benchmarks von akosma auf Parsern, wo er verschiedene Arten von Parsern vergleicht. Wenn ein Parser fehlt, können Sie ihn auch zu den Tests hinzufügen, da sein Code Open Source ist.

iPhoneWebServicesClient