पर कोको एप्लिकेशन आर्किटेक्चर मैं आईफोन पर लंबे समय तक काम करने के बाद मैक पर कोको विकास में वापस आ रहा हूं। मैक पर कोको के साथ मेरा पिछला अनुभव सिर्फ अजीब छोटे टूल्स रहा है। मैं कुछ गंभीर बनाने के लिए देख रहा हूँ।मैक ओएस एक्स
iPhoto (या मेल या चीजें या ....) जैसे आधुनिक कोको एप्लिकेशन को देखते हुए कई ऐप्स एकल-विंडो, स्रोत-सूची आधारित दृष्टिकोण का उपयोग करते हैं। मैं अपने सिर को उस चारों ओर लपेटने की कोशिश कर रहा हूं जितना मैं कर सकता हूं क्योंकि ऐसा लगता है कि यह एक अच्छा अनुभव प्रदान करता है। हालांकि, मुझे थोड़ा परेशानी हो रही है। अनुप्रयोग के
शुरू बिंदु एक AppDelegate वस्तु जो, शुरू करने के बाद, एक खिड़की बनाता है: यहाँ मैं कैसे लगता है कि यह देखना चाहिए, लेकिन मैं सोच रहा हूँ कि कैसे दूसरों को यह कर रहे हैं, और क्या वास्तव में सबसे अच्छा तरीका है [नियंत्रक?] एक निब से, इसके डेटा को स्थापित करने के साथ (कोरडाटा कहें)
विंडोकंट्रोलर एक विंडो लोड करता है जिसमें अनिवार्य रूप से इसमें केवल एक NSSplitView है।
स्प्लिटव्यू के बाईं तरफ एक एनएसटीबल व्यू या NSOutlineView है जो SourceList शैली के लिए सेट है।
तालिका दृश्य के किस आइटम का चयन करने के आधार पर दाएं तरफ ऐप की मुख्य सामग्री है।
मैंने कहीं ग्रहण करेंगे (कहाँ?) भिन्न-भिन्न दृश्य जो सही पक्ष में दिखाई देगा में से प्रत्येक के प्रबंध NSViewControllers हैं (लगता है कि कैसे iPhoto सभी तस्वीरें, घटनाक्रम, चेहरे, स्थल, इत्यादि है और मुझे लगता है वे सभी अलग-अलग निब में दिखाई दे सकते हैं ... क्या यह सही है?)।
उन दृश्य नियंत्रकों को शायद बाईं ओर स्रोत सूची के लिए बाध्य किया गया है .. यह कैसे काम करता है (स्रोत सूची को NSViewControllers के एनएसएआरएआर कंट्रोलर द्वारा समर्थित किया जा सकता है?)।
वैसे भी, ये मेरे विचार हैं, क्या मैं पूरी तरह से ऑफ-बेस हूं या ...? मैंने वेब के चारों ओर देखा है, इस पोस्ट को here मिला है, और मैंने कुछ ऐप्पल स्रोत कोड देखा है लेकिन मैं अपने सिर को इसके चारों ओर लपेट नहीं सकता। किसी भी मार्गदर्शन का स्वागत किया जाएगा।
मैंने निश्चित रूप से इसे बहुत सारे विचार दिए हैं, और मुझे लगता है कि यह मेरी स्थिति के लिए अच्छा काम करता है। मुझे लगता है कि प्रत्येक अलग दृश्य अपने स्वयं के निबमित करने के लिए पर्याप्त होगा, लेकिन फिर मुझे यकीन नहीं है। आईफोन काम करते समय मैंने शायद ही कभी इंटरफेसबिल्डर का इस्तेमाल किया, हालांकि बाइंडिंग्स को इतनी अच्छी तरह से एकीकृत किया गया, मुझे लगता है कि यह समय है कि मैं इसे और अधिक उपयोग करना शुरू कर दूंगा। मैंने कैथी के लेख भी पढ़े हैं, लेकिन यह एक अलग दिशा में एक और टग है, इसलिए इस बात पर मेरा भ्रम है कि यह सब कैसे काम करना चाहिए। – jbrennan
असली सवाल यह नहीं है कि विचार कितने अलग हैं, लेकिन आप उनके लिए क्या उपयोग कर रहे हैं-आप किस मॉडल ऑब्जेक्ट्स में डाल रहे हैं। यदि दो विचार विभिन्न प्रकार की चीजें दिखाते हैं, तो उन्हें अलग-अलग विचार होना चाहिए, प्रत्येक के अपने निब के साथ। –
ठीक है, वे अलग-अलग निब्स होंगे क्योंकि वे विभिन्न प्रकार की चीजें दिखा रहे हैं। निब्स का स्विचिंग कैसे काम करेगा? जब मैं अपने सोर्सिलिस्ट में एक अलग पंक्ति का चयन करता हूं, तो यह कैसे एक नया निब लोड हो जाता है? (साथ ही, क्या यह एक नया व्यू कंट्रोलर लोड करना चाहिए, या सिर्फ दाईं ओर दृश्य को स्वैप करना चाहिए?) – jbrennan