شروع دوره پایتون از پنجشنبه 1 خرداد ، مقدماتی تا پیشرفته، بدون پیش نیاز شروع دوره پایتون از پنجشنبه 1 خرداد ، مقدماتی تا پیشرفته، بدون پیش نیاز
🎯 ثبت نام

کار با Interface collection در NET.-اینترفیس collection در NET.

کلیه حقوق مادی و معنوی این مقاله متعلق به آموزشگاه تحلیل داده می باشد و هر گونه استفاده غیر قانونی از آن پیگرد قانونی دارد.

Collection Interface clip_image001[10] در .NET

در .NET Framework،ه interfaceهایی (رابط هایی) وجود دارد که بوسیله collectionها (مجموعه ها)ی موجود در آن زبان برنامه نویسی پیاده سازی می شوند تا بتوان با دسترسی تصادفی به اشیاء یک مجموعه، از قابلیت iteration (تکرار) بر روی اشیاء، حذف و اضافه کردن آنها بهره برد.

رابط های مختلف، کارایی های مختلفی را در اختیار توسعه دهندگان قرار می دهند. از اینرو همیشه جای سوال بوده است که برای بهبود کارایی، چه زمانی و از چه رابطی استفاده کنیم؟ در این مقاله اطلاعاتی درباره پیاده سازی رابط ها توسط مجموعه ها در اختیار شما قرار خواهد گرفت.

رابط ها

در نمودار زیر ارتباط بین رابط ها را مشاهده می کنید.


ارتباط بین Interface ها

نکته:

1.     در نمودار کلاسی فوق، تمام متد ها وجود ندارد و تنها برخی از مهمترین متدهای هر رابط مجموعه ای ذکر شده است.

2.     رابط های مجموعه ای هم به شکل generic هم به شکل غیر generic در دسترس هستند. بنابراین در نمودار، نوع شی در شکل غیر generic، object و در شکل generic، T (نوع template) است.  

Collection Interface در .NET

نکته:

ارث بری شده، یعنی اینکه ویژگی ها از والد ارث بری می کنند و برای پیدا کردن والد هم از نمودار فوق استفاده می شود.

مطابق جدول فوق، سه رابط اصلی به شرح زیر قابل جمع بندی هستند:

IEnumerable: این رابط حداقل کارایی یعنی شمارش را دارد.

ICollection: این رابط دارای متوسط کارایی است. شامل گرفتن سایز، اضافه کردن، حذف کردن و پاک کردن مجموعه. مثلاً در بروز رسانی مجموعه. از آنجا که این رابط از IEnumerable ارث بری می کند، پس تمام توانایی های IEnumerable را نیز شامل می شود.

IList: این رابط دارای حداکثر کارایی می باشد. شامل دسترسی به عناصر مجموعه ، حذف و اضافه کردن از مجموعه بوسیله اندیس. از آنجا که این رابط از ICollection ارث بری می کند، لذا تمام کارایی های ICollection و IEnumerable را نیز شامل می شود.

در ادامه به ذکر یکسری موارد مهم اشاره خواهیم کرد:

1.     رابط IEnumerable به نحوی از IEnumerator برای فقط خواندن و خواندن روبه جلو استفاده می کند.

2.     از IReadOnly و IEnumerable برای فقط خواندن مجموعه استفاده می شود. اما تفاوتشان در این است که IEnumerable فقط مجموعه را رو به جلو می خواند در حالیکه IReadOnly از ویژگی فقط خواندنی Collection یا List استفاده می کند ومثلاً فاقد ویژگی های بروزرسانی مانند حذف و اضافه است.

3.     IReadOnly بخشی از رابط مجموعه در framework 4.5 است.

در جدول فوق، ویژگی هایی که در زمان تبدیل مجموعه، به نوع interface یا پیاده سازی کلاس interface، بوسیله هر رابط فراهم می شوند، لیست شده اند تا بتوانیم از ویژگی های مجموعه ها استفاده کنیم.

جمع بندی:

خیلی مهم است که توسعه دهندگان، این رابط ها را به خوبی درک کنند. چون این قوانین به ما می گویند که بهتر است به جای وابستگی به انواع concrete ، همیشه وابسته به interface باشیم.

 

 

1394/09/03 3071 1111
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...