2012-09-07 37 views
22

हमें क्रमबद्धरण का उपयोग करने की आवश्यकता क्यों है?
यदि हम नेटवर्क के माध्यम से किसी ऑब्जेक्ट या डेटा का टुकड़ा भेजना चाहते हैं तो हम बाइट्स की धाराओं का उपयोग कर सकते हैं।
यदि हम डिस्क पर कुछ डेटा सहेजना चाहते हैं तो हम बाइट स्ट्रीम के साथ बाइनरी मोड का उपयोग कर सकते हैं और इसे सहेज सकते हैं।
तो सीरियलाइजेशन का उपयोग करने का क्या फायदा है?हम serialization का उपयोग क्यों करते हैं?

+6

सीरियलाइजेशन * * 'बाइट्स की एक धारा' है। – EJP

उत्तर

22
तकनीकी तौर पर निम्न स्तर पर

, अपने धारावाहिक वस्तु भी अपने केबल या अपने फाइल सिस्टम पर बाइट्स की एक धारा के रूप में खत्म हो जाएगा ...

तो तुम भी इसके बारे में सोच सकते हैं बाइट्स की धारा में अपनी ऑब्जेक्ट्स को परिवर्तित करने के मानकीकृत और पहले से उपलब्ध तरीके के रूप में। ऑब्जेक्ट को संग्रहीत करना/स्थानांतरित करना एक बहुत ही सामान्य आवश्यकता है, और प्रत्येक एप्लिकेशन में इस व्हील को फिर से शुरू करने के लिए इसका कम या कम अर्थ है।

जैसा कि अन्य ने उल्लेख किया है, आप यह भी जानते हैं कि यह ऑब्जेक्ट-> stream_of_bytes कार्यान्वयन काफी मजबूत, परीक्षण किया गया है, और आम तौर पर वास्तुकला-स्वतंत्र है।

इसका मतलब यह नहीं है कि किसी वस्तु को सहेजने या स्थानांतरित करने का यह एकमात्र स्वीकार्य तरीका है: कुछ मामलों में, आपको अपने स्वयं के तरीकों को लागू करना होगा, उदाहरण के लिए अनावश्यक/निजी सदस्यों को बचाने से बचें (उदाहरण के लिए सुरक्षा या सुरक्षा के लिए) प्रदर्शन कारण)। लेकिन यदि आप एक साधारण मामले में हैं, तो आप अपने ढांचे, भाषा या वीएम के क्रमिकरण/deserialization का उपयोग करके अपने जीवन को आसान बना सकते हैं।

उम्मीद है कि इससे मदद मिलती है।

2

जनरल में, क्रमबद्धता एक वस्तु के राज्य बने रहने की एक विधि है, लेकिन मैं सुझाव है कि आप इस विकि पृष्ठ पढ़ने के लिए, यह बहुत विस्तृत और मेरी राय में सही है:

http://en.wikipedia.org/wiki/Serialization

+0

मुझे मिलता है * क्या * serialization है। मुझे लगता है कि ओपी और मैं दोनों सोच रहे हैं कि ** उदाहरण ** क्या है, जिसमें यह उपयोगी होगा –

+0

इसका उपयोग नेटवर्क पर पैकेट संचारित करने के लिए किया जाता है क्योंकि प्रत्येक पक्ष में विभिन्न आर्किटेक्चर वाली मशीन हो सकती है। – MCG

9

करने के लिए अन्य कारणों में वास्तुकला के बीच संगत हो। एक पूर्णांक में एक आर्किटेक्चर से दूसरे में बाइट्स की संख्या नहीं होती है, और कभी-कभी एक कंपाइलर से दूसरे तक होती है।

प्लस जो आप बात कर रहे हैं वह अभी भी क्रमबद्ध है। बाइनरी सीरियलाइजेशन। आप उन्हें स्टोर करने के लिए अपने ऑब्जेक्ट के सभी बाइट्स को एक साथ रख रहे हैं और बाद में ऑब्जेक्ट के रूप में उन्हें पुनः चालू करने में सक्षम हैं। यह धारावाहिक है।

अधिक जानकारी on wikipedia

3

सीरियलाइजेशन किसी ऑब्जेक्ट को स्ट्रीम में परिवर्तित करने की प्रक्रिया है ताकि इसे किसी भी भौतिक फ़ाइल (XML) में सहेजा जा सके या डेटाबेस में सहेजा जा सके। सी # में सीरियलाइजेशन का मुख्य उद्देश्य किसी ऑब्जेक्ट को जारी रखना और किसी भी निर्दिष्ट स्टोरेज माध्यम जैसे स्ट्रीम, भौतिक फ़ाइल या डेटाबेस में सहेजना है।

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