Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C#

निर्भरता उलटा सिद्धांत क्या है और सी # में कैसे कार्यान्वित किया जाए?

उच्च-स्तरीय मॉड्यूल निम्न-स्तरीय मॉड्यूल पर निर्भर नहीं होने चाहिए। दोनों को अमूर्तन पर निर्भर होना चाहिए। अमूर्तन विवरण पर निर्भर नहीं होना चाहिए। विवरण अमूर्त पर निर्भर होना चाहिए। यह सिद्धांत मुख्य रूप से कोड मॉड्यूल के बीच निर्भरता को कम करने से संबंधित है।

उदाहरण

निर्भरता उलटने से पहले का कोड

using System;
namespace SolidPrinciples.Dependency.Invertion.Before{
   public class Email{
      public string ToAddress { get; set; }
      public string Subject { get; set; }
      public string Content { get; set; }
      public void SendEmail(){
         //Send email
      }
   }
   public class SMS{
      public string PhoneNumber { get; set; }
      public string Message { get; set; }
      public void SendSMS(){
         //Send sms
      }
   }
   public class Notification{
      private Email _email;
      private SMS _sms;
      public Notification(){
         _email = new Email();
         _sms = new SMS();
      }
      public void Send(){
         _email.SendEmail();
         _sms.SendSMS();
      }
   }
}

डिपेंडेंसी इनवर्जन के बाद कोड

using System.Collections.Generic;
namespace SolidPrinciples.Dependency.Invertion.Before{
   public interface IMessage{
      void SendMessage();
   }
   public class Email: IMessage{
      public string ToAddress { get; set; }
      public string Subject { get; set; }
      public string Content { get; set; }
      public void SendMessage(){
         //Send email
      }
   }
   public class SMS: IMessage{
      public string PhoneNumber { get; set; }
      public string Message { get; set; }
      public void SendMessage(){
         //Send Sms
      }
   }
   public class Notification{
      private ICollection<IMessage> _messages;
      public Notification(ICollection<IMessage> messages){
         this._messages = messages;
      }
      public void Send(){
         foreach (var message in _messages){
            message.SendMessage();
         }
      }
   }
}

  1. मेवे क्या है और यह कैसे अलग है?

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

  1. “पेंट 3डी” क्या है और इसका उपयोग कैसे किया जाता है?

    यदि आप विंडोज 10 का उपयोग करते हैं, तो आपने अपने कंप्यूटर पर हाल ही में पेंट 3 डी नामक एक अजीब ऐप दिखाई दिया होगा। एक नज़र में, यह हमेशा परिचित विंडोज ऐप पेंट के समान लगता है जो विंडोज के प्रत्येक संस्करण में एक प्रधान रहा है। लेकिन अंत में 3D का क्या अर्थ है? क्या यह पेंट का सिर्फ एक नया संस्करण है

  1. BIOS क्या है और BIOS को कैसे अपडेट करें?

    BIOS क्या है और BIOS को कैसे अपडेट करें : जब भी आप अपने पीसी में कीबोर्ड, पावर या सॉफ्टवेयर से संबंधित किसी भी समस्या का सामना करते हैं जैसे इंटरनेट कनेक्टिविटी, पीसी की गति, आदि तो ज्यादातर समस्या किसी न किसी तरह से BIOS से जुड़ी होती है। यदि आप इसके बारे में किसी मरम्मत या आईटी व्यक्ति से परामर्श