मैं आईफोन के लिए कोर डेटा एप्लिकेशन लिखने की कोशिश कर रहा हूं जो बाहरी डेटा स्रोत का उपयोग करता है। मैं वास्तव में अपनी वस्तुओं को जारी रखने के लिए कोर डेटा का उपयोग नहीं कर रहा हूं बल्कि वस्तु जीवन चक्र प्रबंधन के लिए। मेरे पास स्थानीय डेटा के लिए कोर डेटा का उपयोग करने के बारे में बहुत अच्छा विचार है, लेकिन दूरस्थ डेटा के साथ कुछ मुद्दों में भाग लिया है। मैं सिर्फ उदाहरण के रूप में फ़्लिकर एपीआई का उपयोग करूंगा।कोर डेटा के साथ दूरस्थ डेटा तक पहुंचने के लिए पैटर्न?
पहली बात यह है कि अगर मुझे कहना है कि हाल की तस्वीरों की एक सूची है, तो मुझे उन्हें बाहरी डेटा स्रोत से पकड़ना होगा। सूची को पुनर्प्राप्त करने के बाद, ऐसा लगता है कि मुझे प्रत्येक फोटो के लिए पुन: सक्रिय करना और प्रबंधित ऑब्जेक्ट बनाना चाहिए। इस बिंदु पर, मैं अपने कोड में जारी रख सकता हूं और एक मानक अनुरोध डेटा सेट अप करने के लिए मानक कोर डेटा एपीआई का उपयोग कर सकता हूं और कह सकता हूं, कुत्तों के बारे में फ़ोटो का सबसेट पुनर्प्राप्त कर सकता हूं।
लेकिन क्या मैं तो जारी रखने के लिए और उपयोगकर्ता की फ़ोटो की सूची प्राप्त करना चाहते हैं? चूंकि यह संभावना है कि इन दो डेटा सेटों का अंतर हो सकता है, क्या मुझे मौजूदा डेटा पर एक फ़ेच अनुरोध करना है, पहले से मौजूद अपडेट अपडेट करें, और फिर नई ऑब्जेक्ट्स डालें?
-
पुराने पैटर्न में, मैं बस इन डेटा सेट के लिए अलग-अलग डेटा संरचनाओं है और उन्हें उचित रूप से का उपयोग होगा। एक हालिया फोटो सेट और एक उपयोगकर्ता फोटो सेट। लेकिन चूंकि कोर डेटा का सामान्य पैटर्न एक प्रबंधित ऑब्जेक्ट संदर्भ का उपयोग करना प्रतीत होता है, ऐसा लगता है (मैं गलत हो सकता हूं) कि मुझे डेटा के मुख्य पूल के साथ अपना डेटा मर्ज करना होगा। लेकिन यह तस्वीरों की एक सूची पकड़ने के लिए बहुत सारे ओवरहेड की तरह लगता है। क्या मुझे अलग सेट के लिए एक अलग प्रबंधित ऑब्जेक्ट संदर्भ बनाना चाहिए? कोर डेटा का भी यहां इस्तेमाल किया जाना चाहिए?
मुझे लगता है कि कोर डेटा के बारे में मुझे जो आकर्षक लगता है वह यह है कि (वेब सेवा के लिए) मैं कुछ डेटा के लिए अनुरोध करता हूं और या तो इसे अनुरोध में फ़िल्टर करता हूं या इसे कोड में फ़िल्टर करता हूं और एक सूची तैयार करता हूं जिसका उपयोग मैं करता हूं । कोर डेटा के साथ, मैं केवल ऑब्जेक्ट्स की सूची प्राप्त कर सकता हूं, उन्हें अपने पूल में जोड़ सकता हूं (पुरानी वस्तुओं को आवश्यकतानुसार अपडेट कर सकता हूं), और फिर इसके खिलाफ पूछताछ करें। एक समस्या, मैं इस दृष्टिकोण के साथ देख सकता हूं, हालांकि, यह है कि अगर वस्तुओं को बाहरी रूप से हटा दिया जाता है, तो मुझे नहीं पता, क्योंकि मैं अपना पुराना डेटा रख रहा हूं।
मैं जिस तरह से बंद यहाँ आधार हूँ? क्या रिमोट डेटा और कोर डेटा से निपटने के लिए लोग कोई पैटर्न चुनते हैं? :) मुझे लोगों के कुछ पद मिलते हैं कि उन्होंने यह किया है, और यह उनके लिए काम करता है, लेकिन उदाहरणों के तरीके में थोड़ा सा है। धन्यवाद।
क्या आप जो चाहते हैं उसके बारे में अधिक विशिष्ट हो सकते हैं? 'बाहरी डेटासोर्स का उपयोग करता है' बहुत अस्पष्ट है। ऐसा लगता है जैसे आप स्थानीय डेटाबेस के एक टुकड़े को स्थानीय रूप से मिरर करना चाहते हैं। क्या आपको स्थानीय परिवर्तन करने की ज़रूरत है जो वापस प्रचारित हो जाएं? संघर्ष के बारे में क्या? यह एक कठिन समस्या है और अधिक जानकारी निर्देशों का सुझाव देने में मदद करेगी। –
शायद एक पुराना धागा, मैं चीजों को पृष्ठभूमि धागे में लाने की कोशिश करने के लिए लुभाना चाहता हूं और उन्हें लगातार स्टोर में लिखना चाहता हूं और अधिसूचनाएं वहां से मुख्य धागे तक चली जाती हैं - सुनिश्चित नहीं है कि यह काम करेगा, लेकिन अच्छा होगा अगर यह – bshirley