TGViewer
کدهالیک | codehalic کدهالیک | codehalic @codehalics · 4.15K subscribers
Post #1124 816
سال ۱۹۹۴ کتاب معروف Gang of Four یه قانون طلایی رو تو طراحی نرم‌افزار مطرح کرد که می‌گفت همیشه ترکیب (Composition) رو به وراثت ترجیح بدید؛ قانونی که خیلی از ماها شاید بدون اینکه دلیل واقعی و عمیقش رو بدونیم فقط به عنوان یه Best Practice قدیمی تو پروژه‌هامون رعایتش می‌کنیم. اما یکی از قشنگ‌ترین دلایل این الگو که خیلی کم بهش توجه میشه اینه که بهمون کمک می‌کنه کدهایی بنویسیم که خیلی راحت‌تر «دور ریخته» میشن. مثلا فرض کنید سرویس مدیریت سفارشات شما برای اطلاع‌رسانی به کاربر، از یه کلاس پایه به اسم SmsNotifier ارث‌بری کرده. چند سال می‌گذره و تیم تصمیم می‌گیره برای کاهش هزینه‌ها به جای پیامک، فقط از Push Notification استفاده کنه. اتفاقی که میفته اینه که اون کدهای قدیمی پیامک تو کلاس پایه تبدیل میشن به یه کد مرده که جرات نمی‌کنید پاکشون کنید، چون ده‌ها کلاس دیگه هم دارن از همون کلاس پایه ارث می‌برن و می‌ترسید سیستم جای دیگه‌ای به هم بریزه. اما اگه از همون اول جای وراثت، از ترکیب استفاده کرده بودید و منطق نوتیفیکیشن رو تو یه اینترفیس مجزا می‌نوشتید و به سرویس اصلیتون تزریق می‌کردید، الان خیلی راحت می‌تونستید کلاس اس‌ام‌اس رو کلا بندازید تو سطل زباله و کلاس جدید رو جایگزینش کنید، بدون اینکه هیچ استرسی برای خراب شدن منطق اصلی پروژه‌تون داشته باشید.

https://www.youtube.com/watch?v=DIZTQxkOsy4

@codehalics | کدهالیک
  • ❤ 8
More from @codehalics
  1. Oct 4, 2026این پروژه خیلی جالب بود یه نفر نرم افزار مدیریت انبار رو از یه کار خشک و تکراری به یه بازی…
  2. Oct 4, 2026سلام دوستان موسسه فرا رو آماده استخدام یک نیروی کارآموز حضوری در تهران برای پوزیشن فرانت ا…
  3. Oct 3, 2026امروز سرور کدهالیک یه مدت از دسترس خارج شد. بعد از پیگیری معلوم شد هیت‌سینک سرور مشکل داشت…
  4. Oct 3, 2026کارآموز .net اگر به دنیای نرم‌افزار علاقه دارید و برای یادگیری و حل مسئله کنجکاو و پرتلاش…
  5. Oct 3, 2026یه اصطلاح باحالی توش استفاده کرد بود به اسم«اقتصاد دمبلی» (Barbell Economy) مفهوم اقتصاد د…
  6. Oct 3, 2026تو این مقاله‌ای که خوندم نویسنده میگه هنوز برای ساختن یه کسب‌وکار از صفر تو عصر هوش مصنوعی…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →