2010-07-25 8 views
7

तो, मेरे पास डेटा संग्रह करने, खोजने और छेड़छाड़ करने के लिए एक मूल ऐप है। मूल सीआरयूडी संचालन। मैं कहाँ भंडारण कर रहा हूँ या इस डेटा को अद्यतन करने के लिए मेरे कोड के विभिन्न स्थानों में, मैं मूल रूप से इस है:कोर डेटा को सही ढंग से कैसे संभालें Iphone पर त्रुटियों को उपयोगकर्ता अनुभव त्रुटि?

NSError *error; 
if (![self.managedObjectContext save:&error]) { 
    // TODO: Handle this error 
    NSLog(@"Error while saving data %@, %@", error, [error userInfo]); 
} 

क्या ज्यादातर लोगों करते हैं, उपयोगकर्ता के अनुभव के लिहाज से, जब चीजों के इन प्रकार के आते हैं?

एकमात्र चीज जो दिमाग में आती है वह सिर्फ एक भयानक संदेश के साथ कुछ भयानक UIAlertView पॉप अप करना है कि कुछ गलत हो गया है; वास्तव में यह सुनिश्चित नहीं है कि इन चीजों को कैसे ठीक किया जाए।

तर्क के लिए, मान लीजिए कि मेरे मॉडल के पास कोई सत्यापन नहीं है, इसलिए केवल एक ही त्रुटि जो हो सकती है या तो कुछ गलत या प्रोग्रामिंग समस्या होगी।

उपयोगकर्ता अनुभव पर कोई अच्छा विचार?

+0

क्या उपयोगकर्ता इसके बारे में कुछ भी कर सकता है? या यह पूरी तरह से उपयोगकर्ता के नियंत्रण से बाहर है? क्या वहां ** कुछ भी नहीं है ** वे कंप्यूटर को बंद करने से कम कर सकते हैं? –

+0

हाँ, मान लीजिए कि यह एक ऐसी स्थिति है जहां वे ज्यादा नहीं कर सकते हैं; एक कॉल की तरह [NSManagedObjectContext save:] विफल। – davetron5000

उत्तर

5

जैकोब नील्सन के पास few concise guidelines है जो आप देखना चाहते हैं; वह जो कुछ भी प्रस्तावित करता है, उससे मैं दृढ़ता से सुझाव देता हूं कि आप एक त्रुटि संदेश में इंगित करते हैं कि यह उपयोगकर्ता की गलती नहीं है। उपयोगकर्ता परीक्षण में अपने अनुभव से, अधिकांश उपयोगकर्ताओं का मानना ​​है कि जब कोई त्रुटि आती है तो उन्होंने कुछ गलत किया है, और इससे निराशा होती है।

हो सकता है कि कुछ इस तरह:

करने में कोई समस्या बचत था: चिंता मत करो यह तुम्हारी गलती नहीं है! यदि आप ऐप को पुनरारंभ करते हैं, तो आप पुनः प्रयास कर सकते हैं। लेकिन कृपया [डेवलपर संपर्क] से संपर्क करें और उसे बताएं कि त्रुटि [लघु, यादगार त्रुटि कोड]

0

इस तरह के मामले में, मुझे लगता है कि करने के लिए सबसे अच्छी बात यह है कि उपयोगकर्ता को अलर्ट पेश करना और ऐप छोड़ना होगा।

+0

शब्द पर कोई सुझाव? मैंने इन्हें अंदर रखा, और मैं बहुत लंगड़ा के साथ समाप्त हुआ "आपके विजेट को सहेजने में त्रुटि थी; कृपया ऐप को पुनरारंभ करने का प्रयास करें"। मुझे वह सामान नफरत है, लेकिन मुझे यकीन नहीं है कि और क्या करना है ?! – davetron5000

0

संक्षिप्त उत्तर यह है कि मेरे पास कभी उत्पादन में कोई त्रुटि नहीं हुई है। आम तौर पर मैं इन आवेषणों को बना देता हूं और उन्हें ऐप को दुर्घटनाग्रस्त कर देता हूं। यह सुनिश्चित करना है कि मैं उन्हें विकास के दौरान पकड़ूं।

यदि आपका आवेदन अच्छी तरह से लिखा गया है तो आपको इनमें से कोई एक नहीं होना चाहिए जब कोई उपयोगकर्ता एप्लिकेशन चला रहा हो।

पाठ के लिए, यह आपके आवेदन पर निर्भर करता है और उनके लिए कोई सामान्य नियम नहीं है।

+0

जबकि मैं भावना से सहमत हूं, क्या आपको इन तरीकों को किसी भी तरीके से संभालना नहीं चाहिए, बस उन एजेंसियों को संभालने के लिए जिन्हें आप याद करते हैं, या जिन्हें संभाला जाता है लेकिन किसी कारण से वैसे भी होता है? (ई.जी. डिवाइस खराब होने के कारण फ्लिप करने के लिए थोड़ा सा कारण होता है) – RonLugge

+0

एक बार जब आप सत्यापन नियम या अद्वितीय बाधाओं को जोड़ना शुरू कर देते हैं तो आपको त्रुटियों को सहेजना होगा। – malhal

+0

केवल तभी यदि आप अपने उपयोगकर्ता इंटरफ़ेस में ठीक से संभाल नहीं पाते हैं और/या नीतियों को मर्ज करते हैं .. –

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