C # इंटरफ़ेस में कीवर्ड का उपयोग करना


16

जब मैं कुछ कोड लिखने के लिए C # का उपयोग कर रहा हूं और मैं Visual Studio 2010 का उपयोग करके इंटरफ़ेस को परिभाषित करता हूं, तो इसमें हमेशा "स्टेटमेंट" (उदाहरण में दिखाए गए अनुसार) का उपयोग करना शामिल है।

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TestEngine.TestNameSpace
{
    interface ITest1
    {
        bool testMethod(int xyz);
    }
} 

मुझे आश्चर्य है कि ये क्या हैं और यदि वे वास्तव में आवश्यक हैं। क्या मैं इन्हें छोड़ सकता हूं? क्या वे केवल तब आवश्यक हैं जब मैं अपने इंटरफ़ेस विवरण में उन हिस्सों का उपयोग कर रहा / रही हूं?


संपादन के लिए thnx। मैंने अभी-अभी इसका पता लगाया। किसी तरह का उपयोग करने वाले बयानों को छोड़ दिया गया था, भले ही मैंने उन्हें कोड ब्लॉक में चुना था :)
ओनो

2
इसके अलावा पढ़ें stackoverflow.com/a/151560/240613 : आपके कोड में, गलतियाँ हैं।
आर्सेनी मूरज़ेंको

1
लिंक के लिए Thnx, यह एक बढ़िया अतिरिक्त है। @ अक्षत जीवन शर्मा के जवाब के बाद यह स्पष्ट हो गया कि यह वास्तव में मामला है, लेकिन साथ ही यह सवाल एमएसटी द्वारा दिए गए डिफ़ॉल्ट टेम्पलेट / सेटिंग्स से संबंधित है जब आप VS2010 स्थापित करते हैं।
ओनो

1
@MainMa - यह वह जगह है जहाँ Visual Studio usingsडिफ़ॉल्ट टेम्प्लेट में डालता है , इसलिए जब तक कि Microsoft उन लोगों को अपडेट नहीं करता है जब तक कि यह प्रश्न जल्द ही मान्य नहीं हो जाता।
ChrisF

1
@ मीदहत: सच है, लेकिन मुझे लगता है कि यह स्पष्ट है कि क्या पूछा जा रहा है जब कोई स्वयं प्रश्न पढ़ता है। यदि आप बेहतर तरीके से सोच सकते हैं तो शीर्षक को संपादित करने के लिए स्वतंत्र महसूस करें।
ओनो

जवाबों:


49

विज़ुअल स्टूडियो को नहीं पता है कि आप किस कोड को लिखने का इरादा रखते हैं, जिसमें "नए वर्ग" टेम्पलेट में डिफ़ॉल्ट रूप से आपके लिए सबसे सामान्य नामस्थान शामिल हैं। ऐसा किया जाता है इसलिए आपको अपने द्वारा लिखे गए नए कोड की हर एक पंक्ति के लिए सभी संदर्भों को हल करने की आवश्यकता नहीं है।

एक बार जब आप अपना मूल कोड लिख लेते हैं, तो आप राइट क्लिक करें और व्यवस्थित करें > निकालें और सॉर्ट करें का चयन करें जो अप्रयुक्त हैं उन्हें हटा देगा।


2
इसके अलावा, यदि आप गलती से "उपयोग" लाइन को हटा देते हैं, तो आप उन्हें कक्षा के नाम पर वापस जोड़ सकते हैं जो अब नहीं मिल सकता है और राइट-क्लिक करें -> हल करें -> उपयोग ...
श्री लिस्टर

10
@ मित्र: यदि आप पहले से यह नहीं जानते थे: "ctrl +" दबाएं। (नियंत्रण अवधि) जब आपका कर्सर किसी भी अनसुलझे प्रकार या कक्षा में होता है और आपको माउस को छूने के बिना कभी भी समान प्रभाव मिलता है।
स्टीवन एवर्स

3
केवल उत्तर के अतिरिक्त के रूप में: अप्रयुक्त "usings" आपके कोड के रनटाइम को प्रभावित नहीं करेगा, क्योंकि केवल उपयोग किए गए "usings" को लोड किया जाएगा। वे हालांकि IDE और संकलन गति को प्रभावित कर सकते हैं: stackoverflow.com/questions/136278/…
Holger

चूंकि यह स्वीकृत उत्तर है, मैं यह उल्लेख करना चाहता था कि स्टाइलकॉप संदर्भों के गलत स्थान पर होने के बारे में शिकायत करेगा और एक व्यक्ति एक नए वर्ग और नए इंटरफ़ेस आदि के लिए एक टेम्पलेट को संपादित कर सकता है
जॉब

5

हां, आप किसी भी ऐसे निर्देश का उपयोग करके निकाल सकते हैं जिसका उपयोग नहीं किया जा रहा है। इन निर्देशों को स्वचालित रूप से विज़ुअल स्टूडियो द्वारा जोड़ा जाता है क्योंकि वे सबसे अधिक उपयोग किए जाने वाले हैं और उदाहरण के लिए यदि आप इंटरफ़ेस में लाइनक का उपयोग नहीं करने जा रहे हैं तो आप निर्देश को हटा सकते हैं

 System.Linq;

वही अन्य निर्देशों के लिए भी सही है। इसके अलावा, यह मेरी राय में नाम स्थान के अंदर निर्देशों का उपयोग करने के लिए एक अच्छा अभ्यास है।


उस प्रश्न की मदद करने में प्रसन्नता, जो आपने मुझसे पूछा था, मुझे भी लंबे समय के लिए हैरान कर दिया। :)
अक्षत जीवन शर्मा

कोई टेम्प्लेट फ़ाइल संपादित कर सकता है और समायोजित कर सकता है कि किस स्टेटमेंट का उपयोग करना शामिल है और कहाँ - उन्हें डिफ़ॉल्ट रूप से नामस्थान के अंदर जाना चाहिए या अन्यथा स्टाइलकॉप शिकायत करेगा, और इससे भी बदतर - बुरी चीजें हो सकती हैं।
जॉब

3

ये डिफ़ॉल्ट usingविवरण इंटरफेस बनाते समय आपके डिफ़ॉल्ट टेम्पलेट का हिस्सा होते हैं। आप उन्हें निकालने के लिए हमेशा टेम्पलेट को संपादित कर सकते हैं। देखें इस अधिक जानकारी के लिए प्रश्न।


लेकिन क्या वे वास्तव में आवश्यक हैं? क्या उनके खाके में होने का कोई अच्छा कारण है?
ओनो

यदि आपको उनकी आवश्यकता नहीं है, तो बस उन्हें हटा दें। वे केवल चूक हैं।
बर्नार्ड

वे केवल तभी आवश्यक होते हैं जब आपका कोई इंटरफ़ेस तरीका उनमें से किसी एक में स्थित रिटर्न प्रकार हो। आपको कम से कम सिस्टम की आवश्यकता है, और अन्य केवल उन प्रकारों की आवश्यकता है जिन्हें आप वापस करना चाहते हैं।
ग्राहम

दरअसल, कई वर्गों को प्रणाली की आवश्यकता नहीं होती है। लेकिन सभी में यह सबसे डेवलपर्स पर जीवन को आसान बनाता है, विशेष रूप से उन लोगों के लिए जो .NET सिस्टम के लिए बुरी तरह से उपयोग नहीं करते हैं और न जाने कहां से मुख्य सिस्टम कक्षाएं लेते हैं।
वायट बार्नेट

0

संक्षेप में , उन्हें नामस्थान कहा जाता है । आपके कोड के भीतर कुछ पुस्तकालय कक्षाओं को संदर्भित करने के लिए नामस्थान का भी उपयोग किया जाता है। .NET में नाम स्थान का उपयोग करने के बारे में एक अनुशंसित दिशानिर्देश भी है

ज्यादातर मामलों में, यदि आप उपयोग नहीं किए जाते हैं, तो आप उन्हें हटा सकते हैं। निम्नलिखित दो नामस्थान हटाए जाने वाले संभावित उम्मीदवार हैं।

using System.Collections.Generic;
using System.Linq;

दृश्य स्टूडियो शिकायत और कोड को संकलित नहीं करेगा, एक बार कुछ फ्रेमवर्क / लाइब्रेरी कक्षाओं का उपयोग उनके नाम स्थान घोषित किए बिना किया गया है। इस प्रकार, नामस्थान आपके कोड को संरचित करने के साथ-साथ परियोजना वर्गों, इंटरफेस, निर्माण आदि के संदर्भों को आसान बनाने में रोल प्ले करता है।


-1

C # का उपयोग कई तरीकों से किया जाता है .. जैसा कि शब्द का उपयोग करते हुए शब्द कीवर्ड का उपयोग कर रहा है .. शुरू में जब हम सिस्टम का उपयोग करते थे; इसका मतलब है कि नाम प्रणाली का एक DLL है जिसमें सभी मुख्य कार्य संग्रहीत हैं और हम इसका उपयोग अपने कोड को छोटा करने के लिए करते हैं ...

system.WriteLine("Andy");

लेकिन जब हम ऊपर सिस्टम का उपयोग करते हैं तब हम इसे लिख सकते हैं

WriteLine("Andy");

जब हम डेटाबेस से डेटा का उपयोग करने के बाद कमांड कनेक्शन का उपयोग करते हैं, तो इसका मतलब है कि जब हम कनेक्शन का उपयोग करते हैं तो SQLserver में अधिक खत्म हो जाएगा। यह एक कोडर के लिए बहुत उपयोगी है जो अपना समय बचाना चाहता है


1
कृपया अपने उत्तरों में अनावश्यक (और संभावित अनचाहा) लिंक जोड़ने की कोशिश न करें।
क्रिस एफ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.