SOLID

SOLID- مبدأ المسؤولية الواحدة

1 دقيقة قراءة
SOLID- مبدأ المسؤولية الواحدة

رجعنا بعد فترة انقطاع… والعودة لازم تكون بشي مرتب.

واحدة من أهم الفروق بين أي شخص "بيكتب كود"، وبين مهندس برمجيات فعلي، هي القدرة على تنظيم الكود وتصميمه بحيث يكون واضح، قابل للتطوير، وما بيعمل مشاكل كل ما بدك تعدل سطرين.

ومن هون بتبلّش أهمية مبادئ SOLID.

واليوم معنا أول مبدأ: Single Responsibility Principle – SRP

يعني بكل بساطة: خلي كل Class يعمل شغلة واحدة وبس.

لما تحط عشرين مهمة ضمن الـClass، الكود بيصير مثل خريطة معقدة… كل ما تعدل شي، بيضرب شي تاني، وبتصير تخاف تعدل أي سطر فيه.

خلّينا نشوف مثال بسيط.

❌ مثال غير ملتزم بـ SRP:

public class User
{
  public void Register() { }
  public void SendWelcomeEmail() { }
}

الـUser هون صار مسؤول عن التسجيل وعن الإيميلات، ويمكن بعد شوي نضيف عليه الدفع وLogin… وهيك بصير Class بيعمل كل شي.

✔️ مثال أحسن وملتزم بـ SRP:

public class UserRegistration
{
  public void Register() { }
}

public class EmailService
{
  public void SendWelcomeEmail() { }
}

هيك وزّعنا المسؤوليات:

Class للتسجيل
Class للإيميلات

وهيك بيصير الشغل أوضح، والتطوير والصيانة أسهل بكثير.

مرّ عليك Class من النوع يلي بيعمل كل شي؟ يلي بيقول لك: "جيب الطلبات، اعمل اللوغ، خزن الداتا..."

أكيد كل واحد منا عنده قصة — ومعاناة — مع هالنوع من الـClasses.

محمد الإمام

مهندس برمجيات · قائد فريق · مستشار ذكاء اصطناعي

العودة إلى المقالات