Heim > Backend-Entwicklung > C#.Net-Tutorial > Wie implementiert man das Single-Responsibility-Prinzip mit C#?

Wie implementiert man das Single-Responsibility-Prinzip mit C#?

WBOY
Freigeben: 2023-09-12 17:21:02
nach vorne
1033 Leute haben es durchsucht

Wie implementiert man das Single-Responsibility-Prinzip mit C#?

Eine Klasse sollte nur einen Grund haben, sich zu ändern.

Definition – In diesem Fall gilt Verantwortung als Grund für die Änderung.

Dieses Prinzip besagt, dass wir die Funktionalität in zwei Klassen aufteilen müssen, wenn wir zwei Gründe haben, eine Klasse zu ändern. Jede Klasse übernimmt nur eine Verantwortung, und wenn wir in Zukunft eine Änderung vornehmen müssen, werden wir sie in der Klasse vornehmen, die sie übernimmt. Wenn wir Änderungen an einer Klasse vornehmen müssen, die mehr Verantwortlichkeiten hat, kann sich diese Änderung auf andere Funktionen auswirken, die mit anderen Verantwortlichkeiten dieser Klasse zusammenhängen.

Beispiel

Prinzip der Einzelverantwortung vor dem Code

using System;
using System.Net.Mail;
namespace SolidPrinciples.Single.Responsibility.Principle.Before {
   class Program{
      public static void SendInvite(string email,string firstName,string lastname){
         if(String.IsNullOrWhiteSpace(firstName)|| String.IsNullOrWhiteSpace(lastname)){
            throw new Exception("Name is not valid");
         }
         if (!email.Contains("@") || !email.Contains(".")){
            throw new Exception("Email is not Valid!");
         }
         SmtpClient client = new SmtpClient();
         client.Send(new MailMessage("Test@gmail.com", email) { Subject="Please Join the Party!"})
      }
   }
}
Nach dem Login kopieren

Schreiben Sie Code nach dem Prinzip der Einzelverantwortung

using System;
using System.Net.Mail;
namespace SolidPrinciples.Single.Responsibility.Principle.After{
   internal class Program{
      public static void SendInvite(string email, string firstName, string lastname){
         UserNameService.Validate(firstName, lastname);
         EmailService.validate(email);
         SmtpClient client = new SmtpClient();
         client.Send(new MailMessage("Test@gmail.com", email) { Subject = "Please Join the Party!" });
      }
   }
   public static class UserNameService{
      public static void Validate(string firstname, string lastName){
         if (string.IsNullOrWhiteSpace(firstname) || string.IsNullOrWhiteSpace(lastName)){
            throw new Exception("Name is not valid");
         }
      }
   }
   public static class EmailService{
      public static void validate(string email){
         if (!email.Contains("@") || !email.Contains(".")){
            throw new Exception("Email is not Valid!");
         }
      }
   }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie implementiert man das Single-Responsibility-Prinzip mit C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage