core-data ट्यूटोरियल
कोर-डेटा के साथ शुरुआत करना
खोज…
टिप्पणियों
कोर डेटा ऐप्पल के विभिन्न ओएस एसडीके में एक रूपरेखा है, जिसमें आईओएस और ओएस एक्स तक सीमित नहीं है। इसकी दो प्रमुख भूमिकाएं हैं एक मॉडल परत और एक दृढ़ता परत। मॉडल लेयर का उपयोग मॉडल ऑब्जेक्ट के प्रबंधन और डेटा को बनाए रखने में किया जाता है। बस आप ऑब्जेक्ट-ओरिएंटेड इंटरफ़ेस में डेटा को स्टोर और मैनेज कर सकते हैं। प्राथमिक विशेषताओं में फ़िल्टर करना, क्वेरी करना, सॉर्ट करना, डेटा को बनाए रखना और डेटा के बीच संबंध बनाना शामिल हैं। कोर डेटा परियोजनाओं के लिए रुचि के अन्य विषय NSPredicate, थ्रेडिंग और अन्य हैं।
कोर डेटा का एक उदाहरण अनुप्रयोग आपके स्थानीय पुस्तकालय के लिए एक कैटलॉग ऐप दे सकता है। कैटलॉग ऐप में एक लाइब्रेरियन पुस्तकों को जोड़ या हटा सकता है। वे शैली से पुस्तकों को फ़िल्टर भी कर सकते थे, प्रकाशन तिथि तक पुस्तकों को क्रमबद्ध कर सकते थे, या किसी विशिष्ट लेखक के काम की खोज कर सकते थे। एक इकाई "बुक" में शीर्षक, लेखक, प्रकाशन तिथि, isbn, कॉल नंबर, आदि जैसे विभिन्न गुण होंगे। उपरोक्त उदाहरण सहित कोर डेटा भी एक सर्वर से एकत्र किए गए डेटा को संग्रहीत कर सकते हैं।
ढांचे के प्रमुख घटकों में शामिल हैं:
- डेटा मॉडल (निकाय, गुण और संबंध)
- कोर डेटा स्टैक (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
- NSFetchRequest
- NSFetchedResultsController
सूत्रों का कहना है:
CoreData और Concurrency
ऐसा नहीं है कि CoreData थ्रेड-सुरक्षित नहीं है, जो कि अगर यह उदाहरण के लिए ManagedObjects पर काम करने के लिए एक पृष्ठभूमि धागा उपयोग करने के लिए आवश्यक है, वहाँ नई चीजों PrivateQueue- / MainQueue -ManagedObjectContexts की तरह विचार करने के लिए कर रहे हैं इसका मतलब है याद रखना महत्वपूर्ण है।
एपल्स डॉक्यूमेंट्री से: कोर डाटा को एक ही धागे पर चलाने की उम्मीद है। आपको थ्रेड्स के बीच प्रबंधित ऑब्जेक्ट संदर्भों को कभी साझा नहीं करना चाहिए। यह एक कठिन नियम है जिसे आपको नहीं तोड़ना चाहिए।
आपका पहला मॉडल बनाना
-
.xcdatamodeld
फ़ाइल चुनें। आप देखेंगे कि आपके पास कोई संस्था नहीं है। आपको खुद एक बनाना होगा। Xcode के निचले भाग में आपको एक बटन दिखाई देगा, जो कहता है कि "Entity जोड़ें" पर क्लिक करें और प्रोजेक्ट पर काम करने के लिए आपके पास एक नई इकाई होगी।
- इस चरण में उल्लेख करने के लिए कुछ बिंदु हैं। पहला यह है कि आपने अपना इकाई नाम बदल दिया है यहां इकाई को
Person
नाम दिया गया है। विशेषताएँ अनुभाग के अंतर्गत आप अपने मॉडल में विशेषताएँ जोड़ते हैं। यह बटन सेक्शन के नीचे स्थित एक प्लस है। आप अपने ऐप से संबंधित किसी भी विशेषता को जोड़ सकते हैं। उदाहरण के लिए यदि आप एक संपर्क पुस्तक ऐप बना रहे हैं, तो आपको एक व्यक्ति के मॉडल को टाइपBoolean
साथArms
विशेषता बनाने की आवश्यकता नहीं है। आपको इसे अपने ऐप से संबंधित रखना चाहिए। उदाहरण के लिए टाइपकर्ता के साथtelephone
विशेषता जोड़ना या यदि आप स्ट्रिंग पसंद करते हैं। आपके पासBooleans
से लेकरDates
और कई तरह के विकल्प हैं।
- अपने मॉडल से संतुष्ट होने के बाद, आप NSManagedObject उपवर्ग बना सकते हैं।
यहां हम दो महत्वपूर्ण चीजें देख सकते हैं। सबसे पहले, वह व्यक्ति (आपकी संस्था का नाम) NSManagedObject का एक उपवर्ग है। यह आपके Core Data Stack के लिए महत्वपूर्ण है। दूसरा, आपने दो फाइलें बनाई हैं, एक
Person
Person.swift
औरPerson
का एक एक्सटेंशन जिसेPerson+CoreDataProperites.swift
कहा जाता है।सभी जोड़
Person.swift
में किए जानेPerson.swift
, क्योंकि यदि आप कभी भी अपना मॉडल बदलते हैं और कक्षा जनरेटर को फिर से चलाते हैं, तो यहPerson+CoreDataProperties.swift
में सब कुछ अधिलेखित कर देगा।
प्रोजेक्ट बनाना
पहली कार्रवाई करने के लिए एक नई परियोजना बनाने के लिए है फ़ाइल> नई> परियोजना। यहां सिंगल व्यू एप्लिकेशन का चयन किया गया है, लेकिन आप उस प्रोजेक्ट को चुन सकते हैं जो आपकी परियोजना के लिए सबसे उपयुक्त है।
कोर डेटा की स्थापना में अगला कदम आपके प्रोजेक्ट में जानकारी जोड़ रहा है। नीचे दिए गए फोटो में महत्वपूर्ण हिस्सा "कोर डेटा का उपयोग करें" का चयन करना है