سی شارپ و برنامه نویسی شئ گرا، با دو مفهوم بسیار مهم در برنامه نویسی
آشنا خواهیم شد، IoC که مخفف Inversion of Control و DI که مخفف Dependency
Injection هست.همه ما در طول زندگی با وسایل زیادی سر و کار داریم، از
وسایل اولیه زندگی مانند ماشین، یخچال، تلویزیون و ... تا وسایل که هر کس
بر اساس نیاز کاری خودش با اونها سر و کار داره، مانند کامپیوتر یا لپ تاپ و
گوشی. برای مثال، گوشی هوشمند خود را فرض کنید، این گوشی از قطعات زیادی
تشکیل شده، صفحه نمایش، پردازنده، حافظه رم، باتری و کلی قطعات دیگه. حالا
اتفاقی پیش میاد و خدای نکرده گوشی شما از دستتون میافته و صفحه نمایش
گوشیتون آسیب میبینه.
کاری که می کنید باید گوشی رو به یک نمایندگی برده و صفحه نمایش رو تغییر
بدید. حالا فرض کنید که گوشی شما جوری طراحی شده باشه که با آسیب دیدن صفحه
نمایش نیاز باشه تا یک گوشی جدید تهیه کنید!!!! یا برای کارتون یک لپ تاپ
تهیه کردید. بعد از مدتی نیاز دارید تا حافظه رم لپ تاپ رو افزایش بدید. در
این حالت شما لپ تاپ رو پیش نمایندگی یا یک کارشناس در این زمینه می برید و
حافظه رم لپ تاپ شما افزایش داده میشه. حال فرض کنید که لپ تاپ شما همچین
قابلیتی نداشته باشه و شما نیاز باشه برای تغییر یا ارتقا حافظه یک لپ تاپ
جدید خریداری کنید! برای حل این مشکل لوازم الکتریکی از قطعات مختلفی تشکیل
شدند که قابلیت تغییر یا تعویض دارند. به این قابلیت طراحی ماژولار گفته
میشه. در پیاده سازی سیستم های نرم افزاری نیز شما نیز به عنوان برنامه
نویس باید با همچین دیدی نسبت به پیاده سازی نرم افزار اقدام کنید. ما در
اینجا در مورد تغییر یکی از قسمت های نرم افزار صحبت خواهیم کرد که ارتباط
مستقیمی به interface ها و IoC و DI دارد.برای آشنایی بیشتر با این مفاهیم،
با یک مثال جلو میرویم. فرض کنید سیستمی پیاده سازی کردید که اعضاء می
توانند در این سامانه اقدام به ثبت نام کنند. برای عملیات های مرتبط با
مدیریت اعضاء کلاسی با نام Members می نویسیم:
- ۰ نظر
- ۱۹ ارديبهشت ۹۶ ، ۱۵:۳۶