2013-03-29 3 views
27

मैं योग्यता के आधार पता करने के लिए &वाईएएमएल बनाम जीपीबी बनाम जेएसओएन बनाम एक्सएमएल, जो कि परिस्थितियों के लिए सबसे उपयुक्त है?

  1. की डी-गुण YAML चाहते हैं
  2. Google प्रोटोकॉल बफ़र
  3. JSON
  4. एक्सएमएल

मैं के लिए एक आम ढांचे बनाने के लिए चाहते हैं serialization जिसका उपयोग पर्ल और जावा वेब अनुप्रयोग द्वारा किया जाएगा। मैंने गोगल किया है और जानकारी प्राप्त की है, लेकिन फिर भी सटीक मतभेद जानना चाहते हैं।

उत्तर

14

"बेहतर" परिभाषित करें। यदि आप चाहते हैं कि आपका डेटा संग्रहीत और प्राप्त किया जाए तो कोई भी काम करेगा। याम, जेसन और एक्सएमएल मानव पठनीय/संपादन योग्य हैं; protobuf पार्स करने के लिए terser और सरल (कम CPU चक्र) है। जेसन जावास्क्रिप्ट ग्राहकों के लिए बहुत अच्छा है।

अपना जहर उठाओ। या एकाधिक चुनें: आपको एक से अधिक का उपयोग करने की अनुमति है।

10

कोई पूर्ण बेहतर प्रारूप नहीं है, उन सभी को कुछ स्थितियों में फायदे हो सकते हैं। आप किस भाषा का उपयोग कर रहे हैं, अलग-अलग भाषा में विभिन्न प्रारूपों के लिए समर्थन के विभिन्न स्तर हो सकते हैं।

  • यदि एन्कोड/डीकोड गति या स्थान महत्वपूर्ण प्रोटोकॉल-बफर एक अच्छा विकल्प होगा। लेकिन प्रोटोकॉल-बफर एक बाइनरी प्रारूप है और इसे पढ़ने के लिए पाठ प्रारूप से/या तो विशेषज्ञ संपादक या रूपांतरण की आवश्यकता होती है। अन्य प्रारूपों के लिए एक मानक पाठ संपादक के साथ पढ़ा जा सकता है अगर आप

  • एक्सएमएल सबसे व्यापक रूप से समर्थित (और समर्थन कई भाषाओं में शामिल है) है जावास्क्रिप्ट से/लिखने पढ़ने की जरूरत है

  • JSON उत्कृष्ट है। एक्सएमएल में भी बहुत सारे समर्थन उपकरण हैं, लेकिन एक्सएमएल भी सबसे वर्बोज़ है।

  • वाईएएमएल एक्सएमएल की तुलना में काफी पठनीय और अधिक कॉम्पैक्ट है। यह भी कम आम है, कम समर्थन है और आप आमतौर पर इसका उपयोग करने के लिए एक पुस्तकालय शामिल करना होगा।

यह भी देखना

+1

'JSON उत्कृष्ट है यदि आपको जावास्क्रिप्ट से पढ़ने/लिखने की आवश्यकता है तो केवल जावास्क्रिप्ट क्यों? असल में प्रत्येक प्रोग्रामिंग भाषा जेएसओएन का समर्थन करती है। – CoDEmanX

+0

1 कई साल पहले उत्तर की तारीखें; 2 मेनफ्रेम कोबोल में एक्सएमएल समर्थन बनाया गया है लेकिन कोई असली JSON समर्थन नहीं है; 3, जावा (संस्करण <= 8) में एक्सएमएल समर्थन बनाया गया है, जेएसओएन (और यामल) समर्थन अलग पुस्तकालयों द्वारा है –

10

मेरे IMHO:

    YAML ख है मेकअप विन्यास के लिए एटर
    JSON
    एक्सएमएल लोकप्रिय प्रारूप में मेकअप संरचित डेटा के लिए बेहतर है applictions के बीच हस्तांतरण डेटा के लिए बेहतर है, होना चाहिए कि नहीं सरल पठनीय
    Google प्रोटोकॉल बफ़र एक्सएमएल का विकल्प है, लेकिन अधिक कॉम्पैक्ट है और नहीं पठनीय

Btw, आप यहाँ डेटा Yaml,Jsom,Xml converter online के साथ कुछ प्रयोगों बना सकते हैं।

संबंधित मुद्दे