2008-10-03 12 views
8

का उपयोग कर डेस्कटॉप एप्लिकेशन विकास पर अनुशंसित पुस्तकें मैं डेस्कटॉप पर एमवीसी के बारे में किताबों पर सिफारिशों की तलाश में हूं। अगर वे जावा का उपयोग करते हैं, तो यह एक बोनस है।एमवीसी

कुछ पृष्ठभूमि: मैं जावा में डेस्कटॉप एप्लिकेशन लिख रहा हूं। यह एक ऑडियो एप्लीकेशन है जिसमें कई विचार हैं और एक केंद्रीय मॉडल है जिसमें लाइब्रेरी, प्रभाव सूची और उन्हें व्यवस्थित करने के लिए एक फ़ोल्डर संरचना है। इस एप्लिकेशन में मैं मेनू, संदर्भ-मेनू और विभिन्न उपयोगकर्ता कार्यों के लिए समर्थन खींचना और छोड़ना चाहता हूं। मैं एमवीसी का उपयोग करके इसे हासिल करने के तरीके से संघर्ष कर रहा हूं।

मैंने मुख्य कक्षा में सभी तर्क/नियंत्रकों के साथ शुरुआत की लेकिन उन्हें अपनी कक्षाओं में अलग करना शुरू कर दिया है। अब मुझे विचारों और नियंत्रक के बीच संदेशों को संभालने के लिए श्रोताओं और पर्यवेक्षकों का उपयोग करना शुरू करना होगा। इसने मुझे विभिन्न संदेशों को बंद करने के लिए कई स्थानों पर अपने श्रोताओं के माध्यम से कई इंटरफेस बनाने और लूपिंग करने का नेतृत्व किया। लेकिन वह लूप कोड दोहराया जाता है (DRY नहीं), इसलिए मुझे लगता है कि अब मुझे विभिन्न प्रकार के इवेंट क्लास बनाना चाहिए, मेरे विचारों में उन घटनाओं को बनाना चाहिए और विभिन्न श्रोताओं को इसे आग लगाने के लिए दृश्य के भीतर एक विधि का उपयोग करना चाहिए ।

अद्यतन: तर्कसंगतता से इससे कोई फर्क नहीं पड़ता है लेकिन मैं स्विंग नहीं कर रहा हूं, स्विंग नहीं कर रहा हूं।

उत्तर

8

मुझे एक ही समस्या है: यह वास्तव में एक (गैर तुच्छ) स्विंग ऐप लिखने के लिए बहुत अधिक अनुशासन लेता है, क्योंकि सभी श्रोताओं और घटनाओं और असीमित प्रक्रिया असंतुलित कोड के बड़े ढेर के लिए वास्तव में तेज़ी से बनाते हैं।

मुझे पता चला कि क्लासिक एमवीसी पर्याप्त नहीं है, आपको Presentation Model जैसे अधिक विशिष्ट पैटर्न देखना होगा। स्कॉट डेलप द्वारा डेस्कटॉप अनुप्रयोगों पर लागू होने पर मुझे इस पैटर्न को कवर करने वाली एकमात्र पुस्तक Desktop Java Live है। जबकि स्विंग किताबों की बहुमत विशिष्ट समस्याओं को हल करने के लिए तकनीकों से निपटती है (कैसे एक ग्रिडलेस जेबल बनाने के लिए, एक गोल बटन को कैसे कार्यान्वित करें, ...), डेलप की पुस्तक आपको मध्यम आकार के स्विंग एप्लिकेशन, सर्वोत्तम प्रथाओं आदि को आर्किटेक्ट करने में मदद करेगी।

2

बहुत ज्यादा जावा, ग्रहण, नेटबीन स्विंग किताबें चाल चलनी चाहिए।

1) मुफ्त --- जावा में सोच रही थी (http://mindview.net/Books/TIJ/DownloadSites)
2) कोर जावा, खंड 1 और 2
3) स्विंग हैक्स: http://www.amazon.com/Swing-Hacks-Tips-Tools-Killer/dp/0596009070
4) NetBeans आरसीपी: http://www.amazon.com/Rich-Client-Programming-Plugging-NetBeans/dp/B00132S6UU/ref=dp_kinw_strp_1 5) अमीर ग्राहक प्रोग्रामिंग ग्रहण - http://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

उम्मीद है कि इससे मदद मिलती है।

बीआर,
~ एक

0

घुमाओ ट्यूटोरियल मत भूलना; उदाहरण के लिए Swing Events tutorial

और कृपया स्विंगवर्कर को ध्यान में रखें, या एक अलग कार्यकर्ता थ्रेड में ईवेंट को संभालें। मैं किसी भी माध्यम से स्विंग पर कोई विशेषज्ञ नहीं हूं लेकिन मुझे पता है कि जावा डेस्कटॉप अनुप्रयोगों की बहुत सी माना जाने वाली धीमी घटना घटना थ्रेड में किए गए काम के कारण है। अगर इस तरह के काम में कुछ समय लगता है तो संपूर्ण जीयूआई उत्तरदायी नहीं है। बाद में ठीक करना मुश्किल है, अगर आप इसे ध्यान में रखते हैं तो सही करने के लिए मुश्किल नहीं है।

किताबों के लिए, मुझे कोर हॉर्स्टमैन और गैरी कॉर्नेल द्वारा कोर जावा श्रृंखला को पढ़ने के लिए बहुत अच्छा लगा। हालांकि यह जावा (स्विंग समेत) के बारे में है और एमवीसी के बारे में नहीं है।

2

सी # बल्कि जावा में, लेकिन जेरेमी मिलर के पास डेस्कटॉप ऐप्स और एमवीपी/एमवीसी (और अन्य संबंधित सामानों का पूरा समूह) के संबंध में bunch of posts है।

0

मुझे अपनी उपरोक्त प्रविष्टि में जोड़ने की आवश्यकता है कि मुफ्त पुस्तक - ओओपी, एमवीसी और स्विंग के बारे में जावा वार्ता में सोच। यकीन नहीं है कि यह एमवीसी के विभिन्न कार्यान्वयन पर चर्चा करता है, हालांकि।

1

बस मेरे 2 सेंट में फेंकने के लिए, मैं Head First Design Patterns पुस्तक की अनुशंसा करता हूं। इसमें एमवीसी पैटर्न (जावा में) का बहुत अच्छा स्पष्टीकरण है। यह अन्य डिजाइन पैटर्न पर भी बनाता है जैसे कि ऑब्जर्वर, स्ट्रैटेजी एंड कंपोजिट जैसी पुस्तक में चर्चा की जाती है जिसका उपयोग एमवीसी में किया जाता है।

मैंने पढ़ा है सर्वश्रेष्ठ एमवीसी ट्यूटोरियल। अत्यधिक सिफारिशित।