मैं एक ऐसे ऐप पर डेवलपर हूं जिसमें विरासत एमएफसी कोड का एक टन है, और हमारे पास आपकी सभी चिंताएं हैं। हमारी रणनीति के लिए एक बड़ा चालक उतना जोखिम और अनिश्चितता को खत्म करना था जितना हम कर सकते थे, जिसका अर्थ था बिग रिवाइट से परहेज करना। जैसा कि हम सभी जानते हैं, टीबीआर ज्यादातर समय विफल रहता है। इसलिए हमने एक वृद्धिशील दृष्टिकोण चुना है जो हमें मॉड्यूल को संरक्षित करने की अनुमति देता है जो वर्तमान रिलीज में नहीं बदलेगा, प्रबंधित नई सुविधाओं को लिख रहा है, और उन सुविधाओं को निर्यात कर रहा है जो प्रबंधित करने में वृद्धि कर रहे हैं।
आप इसे कई तरीकों से कर सकते हैं:
-
अपने एमएफसी विचारों पर होस्ट डब्ल्यूपीएफ सामग्री (देखें यहां )
-
एमएफसी एमडीआई ऐप्स के लिए, एक नया WinForms फ्रेमवर्क बनाएं और अपने एमएफसी एमडीआई विचारों को होस्ट करें (देखें यहां )
-
एमएफसी संवाद और दृश्यों में WinForms उपयोगकर्ता नियंत्रण होस्ट करें ( यहां देखें )
WPF (विकल्प 1) को अपनाने में समस्या यह है कि आपको एक बार में अपने सभी UI को फिर से लिखना होगा, अन्यथा यह बहुत स्किज़ोफ्रेनिक दिखाई देगा।
दूसरा दृष्टिकोण व्यवहार्य दिखता है लेकिन बहुत जटिल है।
तीसरा दृष्टिकोण वह है जिसे हमने चुना है और यह बहुत अच्छा काम कर रहा है। यह आपको समग्र स्थिरता बनाए रखने और टूटी हुई चीजों को छूने के दौरान अपने ऐप के क्षेत्रों को चुनिंदा रीफ्रेश करने की अनुमति देता है।
विजुअल सी ++ 2008 फ़ीचर पैक दिलचस्प लग रहा है, हालांकि मैंने इसके साथ नहीं खेला है। ऐसा लगता है कि यह पुरानी दिखने के आपके मुद्दे के साथ मदद कर सकता है। यदि आपके उपयोगकर्ताओं के लिए "रिबन" बहुत झटकेदार होगा तो आप तीसरे पक्ष के एमएफसी और/या विनफॉर्म नियंत्रण विक्रेताओं को देख सकते हैं।
मेरी समग्र सिफारिश यह है कि इंटरऑप + वृद्धिशील परिवर्तन निश्चित रूप से परिवर्तनों को व्यापक करने के लिए बेहतर है।
अपना अनुवर्ती पढ़ने के बाद, मैं निश्चित रूप से पुष्टि कर सकता हूं कि ढांचे के उत्पादकता लाभ इसे सीखने में निवेश से काफी अधिक हैं। हमारी टीम पर किसी ने भी इस प्रयास की शुरुआत में सी # का उपयोग नहीं किया था और अब हम सभी इसे पसंद करते हैं।