मुझे इस मित्र के साथ बहस हो रही है जहां मेरे पास लाइब्रेरी है (इसकी पायथन लेकिन मैंने इसे टैग के रूप में शामिल नहीं किया है क्योंकि प्रश्न किसी भी भाषा पर लागू है) जिसमें कुछ निर्भरताएं हैं। बहस यह है कि प्रारंभ में एक डिफ़ॉल्ट वातावरण प्रदान करना है या कोड के उपयोगकर्ता को स्पष्ट रूप से सेट करने के लिए मजबूर करना है।क्या मुझे अपनी लाइब्रेरी का उपयोग करने वाले किसी के लिए पर्यावरण को डिफ़ॉल्ट करना चाहिए?
मेरी राय है कि उपयोगकर्ता को इसके स्पष्ट के रूप में मजबूर करना है और भ्रम से बचें और यह स्पष्ट करें कि वे क्या इंगित कर रहे हैं।
मेरा मित्र यह पर्यावरण के लिए डिफ़ॉल्ट और अधिक सुविधाजनक है और यदि उपयोगकर्ता चाहें तो उपयोगकर्ता को ओवरराइड करने दें।
विचार? क्या लोकप्रिय पुस्तकालयों में कोई अच्छा संदर्भ या उदाहरण/पैटर्न हैं जो हमारे तर्कों का समर्थन करते हैं? भी, इस एपीआई डिजाइन बिंदु पर चर्चा करने वाले किसी भी लोकप्रिय ब्लॉग या लेख?
http://stackoverflow.com/questions/1166539/do-you-find-convention-over के समान संगीत -configuration-good-or-bad – mguymon
@mguymon - मुझे लगता है कि यह थोड़ा अलग विषय है। – leora
लक्षित दर्शक विचार करने के लिए एक और बड़ा कारक है। क्या यह एक कंपनी बनाम नेट पर किसी के लिए आंतरिक है? एक डिजाइनर मानसिकता बनाम इंजीनियरिंग मानसिकता वाले उपयोगकर्ताओं के लिए? आदि। –