2009-05-07 8 views
9

मेरा प्रश्न के दो भाग हैं:आयोजन जीयूआई कोड

  • किसी को भी कैसे जीयूआई कोड पढ़ने, लिखने, और बनाए रखने के लिए आसान है कि लिखने के लिए के बारे में वेब पर कुछ प्रलेखन के लिए कोई सुझाव या संदर्भ है?

    उदाहरण।

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


  • कैसे मैं आसानी से आवेदन भर में सेटिंग प्रबंधित कर सकते हैं?

    उदाहरण।

    यदि उपयोगकर्ता ड्रॉप-डाउन सूची में कोई नया आइटम चुनता है, तो मुझे GUI पर कुछ घटक सक्षम करने, एक ऐप कॉन्फ़िगरेशन फ़ाइल अपडेट करने और बाद में स्थानीय चर में नया मान स्टोर करने की आवश्यकता हो सकती है। मैं आमतौर पर सभी सेटिंग्स (ऊपर देखें) के लिए इवेंट हैंडलर नहीं चुनता, और "लोडगुइसेटिंग" और "सेवगुइसेटिंग" जैसी विधियों के साथ समाप्त होता हूं, लेकिन फिर मैं अपने कोड पर इन तरीकों को कॉल करना समाप्त करता हूं, और यह बहुत से चलता है कोड के बहुत कम, यदि कोई हो, तो वास्तविक परिवर्तनों को अपडेट करने के लिए।

धन्यवाद!

+0

मुझे भी विशेषज्ञों से कुछ सलाह सुनना अच्छा लगेगा। जिन पैटर्नों में मुझे देखना चाहिए, किताबें जिन्हें मुझे पढ़ना चाहिए, मुझे जो ढांचे सीखना चाहिए, सब कुछ मेरे जैसे जीयूआई प्रोग्रामिंग के लिए बहुत अच्छा संकेत होगा। –

+0

आप किस भाषा के साथ काम कर रहे हैं? –

+0

मैं बोर्लैंड सी ++ में काम कर रहे अधिकतम निराशा के बिंदु पर पहुंच गया, लेकिन ऐसा कुछ है जो मुझे लगता है कि मैंने हमेशा संघर्ष किया है। – jeremyalan

उत्तर

2

यदि आप WPF का उपयोग कर रहे हैं, तो आप Composite Application Guideance for WPF पढ़ना चाहेंगे।

यह इन विषयों में से कई (साथ ही साथ कई अन्य) पर चर्चा करता है। उस दिशा का मुख्य लक्ष्य बड़े पैमाने पर अनुप्रयोगों को लचीला, रखरखाव तरीके से बनाना है।

+0

दुर्भाग्य से, मैं डब्ल्यूपीएफ के साथ काम नहीं कर रहा हूं, लेकिन मैं निश्चित रूप से इसे देख लूंगा, और शायद मैं कुछ अच्छी जानकारी निकाल सकता हूं और इसे अपने आवेदन पर लागू कर सकता हूं। – jeremyalan

0

आपको निश्चित रूप से समृद्ध ग्राहक डिज़ाइन के लिए Jeremy Miller's guide पर देखना चाहिए। यह अपूर्ण है, लेकिन मेरा मानना ​​है कि वह इस विषय पर एक पुस्तक लिख रहा है।

एक अन्य ब्लॉग जिसे आप देखना चाहिए Rich Newman's है। वह समग्र अनुप्रयोग ब्लॉक के बारे में लिख रहा है जो समृद्ध ग्राहकों को ढांचा बनाने के तरीके पर एक एमएस सर्वश्रेष्ठ अभ्यास मार्गदर्शिका है।

आप this book भी पढ़ सकते हैं जो केवल एक बहुत ही हल्का पढ़ा जाता है लेकिन आपको कुछ अच्छे विचार देता है।

5

पहला सवाल के लिए कुछ दिशा-निर्देश, एक OO नजरिए से:

  • छोटे में बड़े कक्षाओं तोड़ क्या पैनल में काफी मॉड्यूलर उप-पैनलों का समूह है? प्रत्येक उप-पैनल के लिए एक छोटी कक्षा बनाएं, फिर एक और, उच्च स्तरीय कक्षा उन्हें सभी को एक साथ रख दें।
  • डुप्लिकेशन को कम करें। क्या आपके पास दो पेड़ हैं जो कार्यक्षमता साझा करते हैं? एक सुपरक्लास बनाओ! क्या आपके सभी ईवेंट हैंडलर कुछ ऐसा कर रहे हैं? एक विधि बनाएं जो वे सभी कॉल करें!

दूसरा सवाल। मुझे ऐसा करने के दो तरीके दिखाई देते हैं:

  • श्रोताओं। यदि कई घटकों को एक घटक में होने वाले परिवर्तन के जवाब देना चाहिए, तो उस घटक को एक ईवेंट आग लगाना चाहिए।
  • वैश्विक चर। यदि कई घटक एक ही डेटा को पढ़ रहे हैं और लिख रहे हैं, तो इसे वैश्विक बनाएं (हालांकि आप अपनी चुनी भाषा में ऐसा करते हैं)। अतिरिक्त उपयोगिता के लिए, दो दृष्टिकोणों को गठबंधन करें और घटकों को वैश्विक डेटा ऑब्जेक्ट में परिवर्तनों के लिए सुनें।
संबंधित मुद्दे