BCA / B.Tech 9 min read

Adapter Pattern in Hindi

Adapter Pattern in java in Hindi | जावा में एडाप्टर पैटर्न हिंदी में :


What is Adapter Pattern?  |  एडेप्टर पैटर्न क्या है?

  • एडेप्टर पैटर्न (Adapter Pattern) एक Structural Design Pattern है, जिसका उपयोग तब किया जाता है जब हमें किसी पुरानी क्लास (Old Class) को नए इंटरफेस (New Interface) के साथ काम करने लायक बनाना होता है। 
  • यह एक "अनुवादक" (Translator) की तरह काम करता है, जो दो अलग-अलग इंटरफेसेस को आपस में जोड़ने में मदद करता है।
एडेप्टर पैटर्न को क्यों उपयोग करें?

  • मान लीजिए, आपके पास पुरानी क्लास है, जो पहले से किसी अन्य सिस्टम में काम कर रही थी, और अब आपको उसे नए सिस्टम के साथ जोड़ना है, लेकिन दोनों के इंटरफेस अलग-अलग हैं। अगर आप सीधे पुरानी क्लास को बदलते हैं, तो बहुत सारा कोड फिर से लिखना पड़ेगा, जो समय और संसाधनों की बर्बादी होगी।
समस्या:

  • पुरानी क्लास और नए सिस्टम के इंटरफेस अलग-अलग हैं।
  • पुरानी क्लास को बिना बदले नए सिस्टम में जोड़ना है।
समाधान:

  • एडेप्टर पैटर्न का उपयोग करें, जो दोनों के बीच ब्रिज (पुल) की तरह काम करेगा।
  • एडेप्टर पैटर्न की असली जिंदगी में उदाहरण

 मल्टी-प्लग एडेप्टर:

  • मान लीजिए, आपके पास अमेरिका से लाया हुआ चार्जर है, जिसका प्लग 2-पिन है।
  • लेकिन भारत में 3-पिन के सॉकेट होते हैं।
  • अब या तो आप चार्जर बदलें (जो महंगा पड़ेगा), या फिर एक एडेप्टर (Converter) का इस्तेमाल करें, जो 2-पिन को 3-पिन में बदल दे।
  • एडेप्टर पैटर्न भी यही करता है – पुराने सिस्टम और नए सिस्टम के बीच सेतु (Bridge) का काम करता है।
एडेप्टर पैटर्न का कोड उदाहरण (Java में) अब हम इसे कोड के माध्यम से समझते हैं।

पुराना इंटरफेस (Old Interface)

// पुरानी क्लास जो पहले से काम कर रही है
class OldCharger {
    void chargeWithTwoPins() {
        System.out.println("चार्जिंग 2-पिन से...");
    }
}
 नया इंटरफेस (New Interface)

// नया इंटरफेस जिसे हमारे सिस्टम में सपोर्ट करना है
interface NewCharger {
    void chargeWithThreePins();
}

एडेप्टर क्लास (Adapter Class)

// एडेप्टर जो पुरानी क्लास (OldCharger) को नए इंटरफेस (NewCharger) में कन्वर्ट करता है
class ChargerAdapter implements NewCharger {
    private OldCharger oldCharger;

    // Constructor में पुरानी क्लास को पास किया जाता है
    public ChargerAdapter(OldCharger oldCharger) {
        this.oldCharger = oldCharger;
    }

    @Override
    public void chargeWithThreePins() {
        System.out.println("एडेप्टर उपयोग हो रहा है...");
        oldCharger.chargeWithTwoPins(); // पुराने चार्जर का उपयोग किया जा रहा है
    }
}

उपयोग (Client Code)

public class AdapterPatternExample {
    public static void main(String[] args) {
        // पुराना चार्जर ऑब्जेक्ट बनाया
        OldCharger oldCharger = new OldCharger();

        // एडेप्टर का उपयोग करके नए सिस्टम के साथ पुराना चार्जर उपयोग कर रहे हैं
        NewCharger adapter = new ChargerAdapter(oldCharger);

        // नया सिस्टम तीन-पिन वाले चार्जर की मांग करता है, लेकिन हम एडेप्टर से इसे संभव बना रहे हैं
        adapter.chargeWithThreePins();
    }
}
 आउटपुट:

  • एडेप्टर उपयोग हो रहा है...
  • चार्जिंग 2-पिन से...
Advantage of  Adapter Pattern in Hindi  | एडेप्टर पैटर्न के फायदे :

  • पुराने कोड को बदले बिना नए सिस्टम में उपयोग कर सकते हैं।
  • कोड रीयूज़ (Code Reusability) बढ़ता है।
  • नई और पुरानी तकनीकों को आसानी से जोड़ सकते हैं।
  • सिस्टम में लचीलापन (Flexibility) बढ़ता है।

Disadvantages Adapter Pattern in Hindi  | एडेप्टर पैटर्न के नुकसान :

  • थोड़ा जटिल हो सकता है अगर बहुत सारे इंटरफेसेस हों।
  • परफॉर्मेंस पर हल्का असर पड़ सकता है क्योंकि एक एक्स्ट्रा लेयर जुड़ जाती है।


In this Chapter

Adapter Pattern in Hindi
BCA || Java 2024 Paper || MDSU Exam Paper
What is Java, Characteristics of Java - Java क्या है और जावा की विशेषताएं
Difference between Java and C++ in Hindi. (Java और C++ में अंतर )
Applications of Java Programming in Hindi
OOPS concepts in Java Hindi
What is JVM and JRE in hindi
Features of JAVA in hindi
What is Java bean in hindi & advantage in Hindi
Difference between Java and JavaScript in Hindi
JIT Compiler in Hindi
What is Control Statement (structure) in Hindi
What is variable in hindi (वेरिएबल क्या होता है?):-
Java URL Class in Hindi
What is Java swing and its methods in Hindi
Operators in Java in Hindi
Class & Method in Hindi
Inheritance in Java in Hindi | जावा में इनहेरिटेंस हिंदी में
instance Operator in Hindi
Token in Hindi
Data Types in Hindi
Constructor in Hindi
Object-Oriented-Design in Hindi
Conditional Operator in Hindi
Constant in Hindi
Reference Variable in Hindi
Type Casting in Hindi
Literals in Hindi
Identifiers in Hindi
Array in Hindi
Anonymous Array in Hindi
Access Modifiers in Hindi
Enum Data type in Hindi
Keywords in Hindi-Java
Super Keywords in Hindi
Static Keywords in Hindi
Final Keywords in Hindi
New Operator in Hindi
Method Types in Hindi
Method Overloading in Hindi
Method Overriding in Hindi
Method Hiding in Hindi
Class & Object in Hindi
Diffrence Beetween Class & Object in Hindi
Math Class in Hindi
Abstraction in Hindi
Package in Hindi
Class & Structure in Java in Hindi
Exception Handling in Hindi