मैंने कई बार पढ़ा है और कोड ऑर्थोगोनल रखने के लिए ग्लोबल्स के उपयोग से परहेज करने से सहमत हूं। क्या कॉन्फ़िगरेशन फ़ाइल का उपयोग केवल उस जानकारी को पढ़ने के लिए करता है जो आपका प्रोग्राम ग्लोबल्स का उपयोग करने के समान होता है?कॉन्फ़िगरेशन फ़ाइल का उपयोग यह ग्लोबल्स के उपयोग के बराबर है?
उत्तर
यदि आप ग्लोबल्स के स्थान पर कॉन्फ़िगरेशन फ़ाइलों का उपयोग कर रहे हैं, तो हाँ, वे समान हैं।
कॉन्फ़िगरेशन फ़ाइलों का केवल उन मामलों में उपयोग किया जाना चाहिए जहां अंतिम उपयोगकर्ता (संभावित रूप से एक कंप्यूटर-समझदार उपयोगकर्ता, डेवलपर की तरह) को किसी एप्लिकेशन या कोड के टुकड़े के लिए सेटिंग घोषित करने की आवश्यकता होती है, जबकि कोड को हाथ से बाहर रखते हुए ।
मेरी पहली प्रतिक्रिया यह होगी कि यह वही नहीं है। मुझे लगता है कि ग्लोबल्स के साथ समस्या पढ़ने + लिखने का परिदृश्य है। कॉन्फ़िगर-फ़ाइलें केवल पढ़ने योग्य हैं (कम से कम निष्पादन के मामले में)। उसी तरह स्थिरांक को खराब प्रोग्रामिंग व्यवहार नहीं माना जाता है। कॉन्फ़िगर-फ़ाइलें, कम से कम जिस तरह से मैं उनका उपयोग करता हूं, बस आसान परिवर्तनीय स्थिरांक हैं।
कॉन्फ़िगरेशन फ़ाइलों को वास्तव में अंतिम उपयोगकर्ता द्वारा प्रोग्राम को चलाने के तरीके के रूप में आसानी से संपादन करने के लिए उपयोग किया जाता है।
कॉन्फ़िगरेशन फ़ाइलों का एक और विशेष रूप, उपयोगकर्ता वरीयताओं का उपयोग प्रोग्राम निष्पादन के बीच चीजों को याद रखने के लिए किया जाता है।
ग्लोबल किसी ऑब्जेक्ट के लिए एक अद्वितीय उदाहरण से संबंधित है जो कभी नहीं बदलेगा, जबकि कॉन्फ़िगरेशन फ़ाइल को संदर्भ मानों के लिए कंटेनर के रूप में उपयोग किया जाता है, जो एप्लिकेशन के भीतर ऑब्जेक्ट्स के लिए बदल सकता है।
रनटाइम के दौरान एक "वैश्विक" ऑब्जेक्ट कभी नहीं बदलेगा, अन्य ऑब्जेक्ट कॉन्फ़िगरेशन फ़ाइल के माध्यम से प्रारंभ होता है, लेकिन बाद में बदल सकता है।
असल में, वे ऑब्जेक्ट न केवल एप्लिकेशन के जीवनकाल के दौरान बदल सकते हैं, वे "हॉट-चेंज" (एप्लिकेशन को रोकने/पुनरारंभ किए बिना उनके मूल्य में संशोधन) को समझने के लिए कॉन्फ़िगरेशन फ़ाइल की निगरानी भी कर सकते हैं, यदि वह कॉन्फ़िगरेशन फ़ाइल संशोधित है।
ठीक है, क्योंकि एक कॉन्फ़िगरेशन फ़ाइल और वैश्विक चर दोनों के पास सिस्टम में परिवर्तनों का प्रचार करने का प्रभाव हो सकता है - वे लगभग समान हैं।
लेकिन ... कॉन्फ़िगरेशन फ़ाइल के मामले में आमतौर पर एक एकल, अत्यधिक दिखाई देने वाले (डेवलपर) स्थान पर होने जा रहा है, और वैश्विक चर बहुत ही चुस्त और ट्रैक करने में कठोर परिवर्तन को प्रभावित कर सकते हैं नीचे के तरीके - इस तरह से दो अवधारणाएं समान नहीं हैं।
कॉन्फ़िगरेशन फ़ाइल होने से DRY concepts के साथ उपयोग में मदद मिलती है, और इसे सिस्टम के orthogonality को चोट पहुंचाना नहीं चाहिए।
$ 25 शब्द 'ऑर्थोगोनल' का उपयोग करने के लिए बोनस अंक। गैर-युक्लिडियन परिभाषा को जानने के लिए मुझे विकिपीडिया में इसे देखना था।
हां, व्यावहारिक प्रोग्रामर पढ़ना और ग्लोबल्स का विषय decoupling के बाद पेश किया गया है। कॉन्फ़िगरेशन फ़ाइलों का विचार दिमाग में आया और बुराई का स्तर निर्धारित करना चाहता था। – osp70
वे बिल्कुल एक दूसरे के लिए समान या प्रतिस्थापन नहीं हैं। एक कॉन्फ़िगरेशन फ़ाइल, या ऑब्जेक्ट का उपयोग गैर-वैश्विक रूप से किया जा सकता है, यानी स्पष्ट रूप से पारित किया जा सकता है।
आप निश्चित रूप से एक वैश्विक चर है जो एक कॉन्फ़िगरेशन ऑब्जेक्ट को संदर्भित करता है, और यह उद्देश्य को हरा देगा।
- 1. रजिस्टर ग्लोबल्स का उपयोग करना
- 2. ग्लोबल्स
- 3. कॉन्फ़िगरेशन फ़ाइल के मेलसेटिंग
- 4. जावा बराबर बयान 'का उपयोग'
- 5. लिंक का उपयोग करते समय, डबनुल नल के बराबर है?
- 6. mysql_insert_id() के बराबर क्या है; तैयार कथन का उपयोग कर?
- 7. ग्लोबल्स कॉन्स्टेंट्स
- 8. सी # में एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल का उपयोग कैसे करें?
- 9. क्या शक्तियों में "यह" के बराबर है?
- 10. log4j: कौन सी कॉन्फ़िगरेशन फ़ाइल का उपयोग किया गया था?
- 11. जावा -jar: बाहरी कॉन्फ़िगरेशन फ़ाइल का उपयोग करें
- 12. जावा .properties फ़ाइल रूबी के बराबर है?
- 13. ग्रहण आरसीपी: कॉन्फ़िगरेशन निर्देशिका का उपयोग करना
- 14. पायथन में ग्लोबल्स() के कारण?
- 15. वी # एन 'के उपयोग के बराबर वीबीएनईटी क्या है
- 16. कॉन्फ़िगरेशन का उपयोग करना, और मूल अनुभाग
- 17. एंड्रॉइड - बिल्ड कॉन्फ़िगरेशन बनाने के लिए चींटी का उपयोग करें जो कॉन्फ़िगरेशन मानों को बदलता है
- 18. क्या जावा के पास सी # "उपयोग" खंड के बराबर है
- 19. पाइथन ग्लोबल्स()
- 20. बैच फ़ाइल CURRENTDIR = "$ PWD" के बराबर है?
- 21. विजुअल स्टूडियो में ग्रहण "रन कॉन्फ़िगरेशन" के बराबर है?
- 22. ओस्ट्रिक कॉन्फ़िगरेशन के लिए कैसे उपयोग किया जाता है?
- 23. फ़ाइल स्थानांतरण के लिए वेबसॉकेट का उपयोग
- 24. फ्लास्क - टेम्पलेट में कॉन्फ़िगरेशन चर का उपयोग
- 25. सी # समाधान: बाह्य डीएल के लिए एक "ग्लोबल्स" प्रोजेक्ट का उपयोग करना?
- 26. क्या यह gevent के साथ SQLalchemy का उपयोग सुरक्षित है?
- 27. क्या यह पाइथन के-एस विकल्प का उपयोग सुरक्षित है?
- 28. क्या यह सर्वलेट के अंदर java.util.Timer का उपयोग सुरक्षित है?
- 29. shared_ptr का उपयोग करने के लिए, क्या यह सुरक्षित है?
- 30. "यह एसक्यूएलट्रांसक्शन पूरा हो गया है, यह अब उपयोग करने योग्य नहीं है।" ... कॉन्फ़िगरेशन त्रुटि?
मुझे इस जवाब के पहले भाग के लिए ध्वनि स्निपी के लिए मतलब नहीं था। जिस बिंदु को मैं बनाने की कोशिश कर रहा था वह है कि कॉन्फ़िगरेशन फ़ाइलें ग्लोबल्स को रोकने के लिए एक कार्य-आसपास नहीं हैं। –