PDA

View Full Version : تعریف هر یک از اصول برنامه نویسی شیء گرا در یک خط



mahdikoochoolooo
سه شنبه 01 خرداد 1397, 16:50 عصر
با سلام و خسته نباشید خدمت دوستان
بنده خیلی وقته می خوام در یک خط هر یک از اصول برنامه نویسی شیء گرا رو تعریف کنم و از دوستان میخوام زحمت بکشن یا اون رو اصلاح کنن یا تایید کنن.


1- کپسوله سازی : رفتار های هر کلاس باید از کلاسهای دیگر مجزا باشد.
2- چند ریختی: هر متد میتواند رفتار متفاوت با اسم یکسان داشته باشد.
3- انتزاع : کلاس انتزاعی کلاسی می باشد که تمام کلاس های مشتق شده از آن باید تمام ویژگی های کلاس انتزاعی را در خود داشته باشند.
4- اینترفیس : ؟
5- وراثت : هر کلاس می تواند والد کلاس دیگری باشد و تمام خصوصیات خود را به وی ارث دهد.

danialafshari
چهارشنبه 02 خرداد 1397, 01:03 صبح
با سلام
بخشی از مفاهیمتون اشتباس که بدلیل کسر وقت لینک هایی برای اطلاعات عمومی قرار میدم و شما کافی بود توی گوگل سرچ میکردید
ببینید بحث شی گرایی در سی شارپ بحث خیلی مفصلی هست که میشه راجبش ساعت ها صحبت کرد و کتاب ها نوشت که اونم شاید برای دانشجو کامل جا نیوفته چون باید چند وفتی کار کنه تا براش ملموس بشه و با یک خط دو خط نمیشه توضیحش داد

کپسوله سازی Encapsulation :
http://barnamenevis.org/showthread.php?484018-%DA%A9%D9%BE%D8%B3%D9%88%D9%84%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-%DA%86%DB%8C%D8%B3%D8%AA%D8%9F

چند ریختی polymorphism :
http://www.tahlildadeh.com/ArticleDetails/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-Polymorphism-%DB%8C%D8%A7-%DA%86%D9%86%D8%AF%D8%B1%DB%8C%D8%AE%D8%AA%DB%8C-%D8%AF%D8%B1-Java

انتزاعی Abstraction :
http://onlife.blog.ir/post/4/Abstraction

ارث‌بري يا Inheritance ,انتزاع يا Abstraction ,كپسوله‌كردن يا,چندريختي يا Polymorphism :
http://rossoftco.blogfa.com/post/66/%D8%B4%D9%8A%D8%A1-%DA%86%D9%8A%D8%B3%D8%AA-%2C%D8%A7%D8%B1%D8%AB%E2%80%8C%D8%A8%D8%B1%D9%8A-%D9%8A%D8%A7-Inheritance-%2C%D8%A7%D9%86%D8%AA%D8%B2%D8%A7%D8%B9-%D9%8A%D8%A7-Abstraction-%2C%D9%83%D9%BE%D8%B3%D9%88%D9%84%D9%87%E2%80%8C%D 9%83%D8%B1%D8%AF%D9%86-%D9%8A%D8%A7%2C%DA%86%D9%86%D8%AF%D8%B1%D9%8A%D8%A E%D8%AA%D9%8A-%D9%8A%D8%A7-Polymorphism-

اینترفیس Interface :
http://www.tahlildadeh.com/ArticleDetails/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-Interface-%D8%AF%D8%B1-C-sharp

فقط به صورت خلاصه در مورد اینترفیس چون براتون ؟ هست بگم یکی از کاربردهای اینترفیس شاید بشه گفت قانون گذاری هست شما وفتی ساختاری رو در اینترفیس تعریف میکنید که اصطلاحاً میگن امضاش رو قرار میدید اگر کلاسی بخواد از اینترفیس به ارث ببره حتماً باید ساختار درون اینترفیس رو implement کنه وگرنه با خطای implement مواجه میشه، اینترفیس یک گروه منطقی،شامل تعدادی از مجموعه متدهای امضا شده مطلوب می باشد که به مابرای رسیدن به برخی از قابلیت ها کمک میکنند و توی بحث ارث بری هر کلاس بیشتر از یک کلاس رو نمیتونه به ارث ببره ولی میتونه از چندین اینترفیس ارث بری کنه و اینترفیس طبق قرارداد با I شروع میشن مثل IEnumerable، ICollection و ... که نامگذاریش دلخواهه ولی استانداردش به همین شکله.
بحثش مفصله و وقت بنده کم، میتونید لینک ها رو مطالعه کنید
موفق باشید

mahdikoochoolooo
چهارشنبه 02 خرداد 1397, 08:34 صبح
ممنون از لطفی که در حق من می کنید. ببینید من دو سال هست که از شی گرایی دور شدم و رفتم سمت بی آی و فهمیدم اشتباه کردم و برگشتم. وقتی می رم مصاحبه می گن تو یه خط تعریف کن اول. منم نمی تونم واقعا. می خوام دوستان توی یک خط اصل رو بگن. علما و بزرگان هم همینطوری هستن. من سرچ می زنم میاد هزار خط صحبت می کنه در صورتی که عاقل اصل رو می گیره و روی اون فروع رو می چینه.
بخاطر همین می خوام در یک جمله اصل و مخلص کلام هر کدوم از این اصول رو بدونم. دوستان اگر مرحمت کنن راهنمایی کنن.