मैं asp.net और winform विकास को जानता हूं। मैं उस प्रकार का डेवलपर नहीं हूं जो नई तकनीक में कूदता है क्योंकि यह नया है। इससे मुझे उच्च उत्पादकता जैसे अतिरिक्त लाभ देने की जरूरत है।
मेरी टीम के लिए, WPF के साथ अनुप्रयोगों को विकसित करने के लिए WinForms की तुलना में बहुत तेज साबित हुआ है। हमने हाल ही में 32 आदमी दिनों में एक मध्यम आकार का ऐप जारी किया है। हमारे पास टीम पर एक अनुभवी WPF डेवलपर, और अनुभवहीन लोगों का फायदा था, जो तकनीक सीखने के लिए उत्सुक थे। बहुत मनोबल था, और उत्पादकता प्रभावशाली थी।
WinForm एक परिपक्व सिद्ध तकनीक है और मुझे यह तथ्य पसंद है कि मैं विजुअल स्टूडियो बनाम कई आईडीई के लिए WPF (VS & Blend परिवार) में सब कुछ कर सकता हूं।
क्या आप खुद को हैंड-कोडर या ड्रैग-एंड-ड्रॉप कोडर मानते हैं? यदि आप अपने आप को ड्रैग-एंड-ड्रॉपर मानते हैं, तो WPF टूलिंग की वर्तमान फसल आपके लिए उपयुक्त नहीं हो सकती है। शायद Visual Studio 2010 की प्रतीक्षा करें? मैं एक्सएएमएल में लगभग विशेष रूप से काम करता हूं। अधिकांश WPF'ers शायद इस बात से सहमत होंगे कि फिलहाल WPF एप्लिकेशन बनाने का यह सबसे प्रभावी तरीका है। लेकिन फिर, मैं अपने HTML को हाथ से तैयार करता हूं, इसलिए यह मुझे स्वाभाविक लगता है ...
शुद्ध व्यावसायिक ऐप के लिए Winform पर WPF के क्या फायदे हैं? मुझे अतिरिक्त आई कैंडी, एनीमेशन, ग्रेडिएंट्स, छवि प्रदर्शन प्रभाव और इतने पर दिलचस्पी नहीं है, जिस पर WPF प्रदान करता है।
मैं इस तरह से सोचता था, लेकिन मैंने हाल ही में एक व्यावसायिक अनुप्रयोग विकसित किया है जिसमें ग्रेडिएंट्स, बुनियादी एनीमेशन और प्रभाव हैं। इन फैंसी सुविधाओं को उपयोगकर्ता के अनुभव को बढ़ाने के लिए जोड़ा गया था। व्यावसायिक ऐप्स को बैटलशिप ग्रे क्यों होना चाहिए? उन्हें अनुपयोगी क्यों होना चाहिए? दी गई, यह रंग, ग्रेडिएंट्स, एनीमेशन नहीं है जो एक व्यावसायिक ऐप को प्रयोग करने योग्य बनाता है, लेकिन इन प्रभावों का उपयोग करके उपयोगकर्ता अनुभव प्राप्त कर सकते हैं, और यही मेरे लिए महत्वपूर्ण है। मैं WinForms में WPF ऐप में जो कुछ भी करता था - वह सब कुछ कर सकता था - यह अभी बहुत समय लेगा।
बेहतर अमीर डेटा बाइंडिंग?
Databinding समर्थन वास्तव में आश्चर्यजनक है। यह मंच में मेरी सबसे अधिक पसंद की जाने वाली विशेषता है। की जाँच करें इस अद्भुत Databinding cheatsheet ।
मेरे जैसे किसी व्यक्ति को स्विच करने के लिए मनाने की कोशिश करें।
मैंने फैसला किया है कि मैं WPF पर स्विच करने के लिए किसी और को समझाने और समझाने की कोशिश नहीं कर रहा हूं। जिन डेवलपर्स को मैंने "समझाने" (सभी अनुभवी Winforms डेवलपर्स) की कोशिश की है, वे आमतौर पर मंच के साथ संघर्ष करते रहे हैं। उन्हें प्रौद्योगिकी में निवेश नहीं किया जाता है। वे "इसे प्राप्त नहीं करते"। मैं लोगों को प्रौद्योगिकी को देखने के लिए प्रोत्साहित करता हूं कि यह देखने के लिए कि क्या यह डेवलपर के रूप में उनके लिए सही है। सीखने की अवस्था बहुत बड़ी है। यदि आप पुस्तकों से सीखते हैं, तो WPF पुस्तकों पर कुछ लघु-समीक्षाओं के लिए इस SO पोस्ट को देखें। यदि आप वीडियो से सीखते हैं, तो windowsclient.net WPF वीडियो देखें । यदि आप उदाहरण से सीखते हैं, तो यह या यह देखेंपद। WinForms के बारे में सबकुछ भूल जाओ। WPF वास्तव में WinForms की तुलना में ASP के करीब लगता है। कुछ सैंपल एप्लिकेशन बनाएं। देखें कि क्या यह आपके और आपकी टीम के लिए काम करता है।
जब आप बहु-कुशल (asp.net/winform skills) होते हैं, तो आप WPF में स्किलिंग-अप का लाभ देख सकते हैं क्योंकि यह सिल्वरलाइट से बहुत निकटता से संबंधित है। सिल्वरलाइट आपके समृद्ध ग्राहक अनुप्रयोगों और वेब अनुप्रयोगों के बीच की खाई को भर देता है।
मुझे व्यक्तिगत रूप से लगता है कि WPF .NET फ्रेमवर्क के लिए उपलब्ध सर्वश्रेष्ठ क्लाइंट साइड टेक्नोलॉजी है, और आमतौर पर भविष्य के काम के लिए WinForms में विकसित होने से बचना होगा। YMMV
आपके निर्णय के लिए गुड लक।