از حذف تکرار تا معماری نرمافزار: درسهایی از پیادهسازی سیستم مدیریت کتابخانه با C# و Generics
CS Internship
0:00 / 0:00
از حذف تکرار تا معماری نرمافزار: درسهایی از پیادهسازی سیستم مدیریت کتابخانه با C# و Generics
6 просмотров · 7 дней назад
CS Internship
163 подписчика
6 просмотров · 7 дней назад
وقتی صحبت از Generics در C# میشود، اولین چیزی که به ذهن میرسد جلوگیری از تکرار کد (DRY) است. اما آیا نقش جنریکها فقط همین است؟
در این ارائه تکنیکال که برای دوره CS Internship آماده کردهام، بهجای مرور سادهی سینتکس C#، مسیر تحول یک پروژه از یک مسئلهی ساده به یک تصمیم معماری را بررسی کردهام.
🔍 در این ارائه به چه مواردی میپردازم؟
1️⃣ تضاد Generic و مجموعههای ناهمگن (Heterogeneous Collections): چرا با وجود Generic Class همچنان در مدیریت لیستهای متنوع به چالش میخوریم؟
2️⃣ مدیریت نوع در زمان اجرا (Runtime Type Handling): بررسی راهکار Pattern Matching در متد ToString() و چالشهای Type Safety.
3️⃣ محدودسازی مفاهیم با Constraints: چطور با where رفتارهای مجاز نوع داده را کنترل کنیم.
🎯 دستاورد اصلی این پروژه برای من:
بزرگترین تغییر نگاه من در طول این پروژه این بود که Generic صرفاً ابزاری برای کمتر کد زدن نیست، بلکه یک ابزار طراحی برای بیان دقیق رابطه بین ساختار و داده است.