समस्या:कोर डाटा बनाम NSFileManager
मैं कुछ समय के लिए अब अपने ही कैश प्रणाली NSFileManager
का उपयोग करके उपयोग किया गया है। आम तौर पर मुझे प्राप्त डेटा JSON है और मैं सिर्फ शब्दकोश को सीधे कैश में (दस्तावेज़ फ़ोल्डर में) सहेजता हूं। जब मुझे इसकी आवश्यकता होती है तो मैं इसे प्राप्त कर दूंगा। मैं भी लागू करता हूं, कभी-कभी जब मुझे लगता है कि यह बेहतर है, तो NSDictionary
रूट फ़ोल्डर पर किसी दिए गए संसाधन के पथ के लिए कुंजी/मानों के साथ। उदाहरण के लिए:
जेनेव में मौसम के बारे में संसाधन 17/02/2013, इसलिए मेरे पास GE_17_02_2013 नामक एक कुंजी होगी और NSDictionary
के लिए जानकारी के साथ मूल्य का मूल्य होगा।
आम तौर पर मुझे कोई जटिल प्रश्न करने की आवश्यकता नहीं है। लेकिन, किसी भी तरह, और जो मैं पढ़ रहा हूं, जब आपके पास बहुत अधिक डेटा है, तो आपको कोर डेटा के साथ रहना चाहिए। मेरे मामले में, मेरे पास आमतौर पर बहुत अधिक डेटा होता है, लेकिन मुझे वास्तव में कभी भी एप्लिकेशन को नीचे जाने या प्रदर्शन के संदर्भ में पीड़ित महसूस नहीं हुआ। तो मेरी प्रश्न हैं:
इस मामले में, जहां कभी कभी (मौसम बात सिर्फ एक उदाहरण था) मैं तो बस (एक ट्विटर फ़ीड, उदाहरण के लिए) सभी डेटा को हटाने और एक द्वारा यह प्रतिस्थापित करना होगा डेटा की पूरी तरह से नई धारा, कोर डेटा मूल्य है? मुझे लगता है कि सभी डेटा को हटाकर, (पॉपुलटिंग) डालना,
NSDictionary
को स्टोर करने और पुराने को बदलने की तुलना में भारी है।कभी कभी यह छवियों, textfiles, आदि envolve हैं और
NSFileManager
यह पूरी तरह से करता है, तो क्या फायदे कोर डाटा इस मामलों में ला सकता है?
पी.एस: मैं सिर्फ this पोस्ट, जहां सवाल इस तरह का बना है और संख्या एक वास्तव में तेजी से होता है जो साबित देखा। फिर भी, मैं एक अनुभवजन्य उत्तर भी पसंद करूंगा।
कैश ऑफ़लाइन परिदृश्यों के लिए अधिक है। इसलिए इंटरनेट एक्सेस के साथ सामान्य परिस्थितियों में, मैं आमतौर पर संग्रहीत डेटा को अक्सर बदलता हूं, इसलिए मुझे चिंता थी। एक अन्य लाभ, केवल 'NSDictionary' का उपयोग करने और उसके अंदर क्या है (उसे कैसे बनाया गया है) जानने की आवश्यकता नहीं है। क्या यह केवल 'NSDictionary' के साथ' NSManagedObject' होना समझ में आता है? – Peres
स्थानीय फाइल सिस्टम के लिए भी कैश महत्वपूर्ण है। फाइल सिस्टम एक्सेस मेमोरी एक्सेस की तुलना में धीमा है। मुझे यकीन नहीं है कि आपको उस शब्दकोश के अंदर क्या है, यह जानने की आवश्यकता नहीं है, क्या आप इसे किसी बिंदु के रूप में पढ़/व्याख्या नहीं करते हैं।यदि आप केवल किसी अन्य फ़ाइल की तरह फ़ाइल संग्रहीत करते हैं, जो एक धारावाहिक शब्दकोश होता है, तो हाँ, कोर डेटा –
का उपयोग करने में कोई मतलब नहीं है, मेरा मतलब है, मुझे पता है कि अंदर क्या है, लेकिन अगर किसी कारण से एपीआई बदलती है, और अलग-अलग चीजें जोड़ती है , मैं उस पर बाध्य नहीं हूँ। – Peres