मैं निर्देशिका पेड़ों की तुलना करने के लिए कक्षा को कार्यान्वित कर रहा हूं (सी # में)। पहले मैंने कक्षा के निर्माता में वास्तविक तुलना लागू की। इस तरह:क्या इसे एक निर्माता में लंबे संचालन करने के लिए खराब डिजाइन माना जाता है?
DirectoryComparer c = new DirectoryComparer("C:\\Dir1", "C:\\Dir2");
लेकिन यह कन्स्ट्रक्टर में संभावित लंबा संचालन करने के लिए "सही" महसूस नहीं करता है। एक वैकल्पिक तरीका है कि कन्स्ट्रक्टर को निजी बनाना और इस तरह की स्थिर विधि जोड़ें:
DirectoryComparer c = DirectoryComparer.Compare("C:\\Dir1", "C:\\Dir2");
आपको क्या लगता है? क्या आप एक निर्माता को "त्वरित" होने की उम्मीद करते हैं? क्या दूसरा उदाहरण बेहतर है या क्या यह कक्षा के उपयोग को जटिल बना रहा है?
Btw:
मैं अभ्यस्त किसी भी सवाल का जवाब निशान को स्वीकार कर लिया जाता है, क्योंकि मुझे नहीं लगता कि एक सही जवाब, बस वरीयता और स्वाद है है।
संपादित करें:
बस मेरे उदाहरण एक छोटे से स्पष्ट करने के लिए। यदि निर्देशिका अलग-अलग होती है, तो मैं केवल तभी नहीं आती हूं, मुझे यह भी रूचि है कि वे कैसे भिन्न होते हैं (कौन सी फाइलें)। तो एक साधारण int वापसी मूल्य पर्याप्त नहीं होगा। Cdragon76.myopenid.com का उत्तर वास्तव में जो चाहता है उसके करीब है (आपको +1)।
यदि आप कोई उत्तर नहीं चिह्नित करेंगे, तो शायद यह एक समुदाय विकी होना चाहिए? –
मैं सहमत हूं [10chars] –