View Full Version : مبتدی: شئی گرایی چیست؟
raminlich
جمعه 21 آذر 1393, 01:08 صبح
سلام به همگی
من چند جا شی گرایی رو خوندم یه چیز هایی فهمیدم و یه چیز هایی نفهمیدم کلا قاطی کردم. :گیج:
هر جا هم میرم میگن اگر مفهوم شئی گرایی رو خوب بلد باشی خیلی خوب تو برنامه نویسی پیشرفت می کنی.
اگه میشه یکی بیاد با یک توضیح مختصر و یک مثال واقعی برام بزنه(منظورم از واقعی یه مثال توی دنیای واقعی)
خیلی ممنون میشم
saeed410
جمعه 21 آذر 1393, 03:10 صبح
شی گرایی برای ایجاد مفاهیم قابل درک و فیزیکی درزندگی روزمره ما در برنامه نویسی ایجاد شده است.
شی یا object در معنی اصلیش یعنی چیز(هر چیزی) . در مهندسی نرم افزار هر چیزی که دارای خصوصیاتی باشد و عملیاتی را انجام دهد یا عملیاتی روی آن انجام شود شی گفته میشود. به عنوان مثال در یک سیستم ثبت نام دانشجو ما اشیاء : دانشجو ، استاد ، درس و... رو داریم.
برای دانشجو ما خصوصیات شماره دانشجویی ، نام و نام خانوادگی ، سال ورود و ... رو داریم. البته دانشجو ممکنه یک سری خصوصیات دیگه داشته باشه مثلاً وزن ، قد ، رنگ چشم یا خصوصیات اخلاقی ولی در سیستم دانشجویی چون به اینها نیاز نیست اونها رو خلاصه یا abstract میکنند. و دانشجو میشه یک abstract object در سیستم دانشجوی. برای اساتید و دروس هم به همین ترتیب.
عملیاتی که دانشجو انجام میده شامل انتخاب واحد و حذف و اضافه و پرداخت شهریه و .... دوباره در اینجا دانشجو عملیات دیگه ایی رو هم انجام میده ولی مورد بحث ما نیست مثل غذا خوردن ، صحبت کردن و ... که در اینجا بازم از abstraction استفاده میشه.و فقط عملیات مورد نظر در سیستم مورد بحث رو درچین میکنیم.
حالا کلاس چیه؟
تعریف کلاس: به مجموعه ای از اشیاء گفته میشه که در یک یا چند خصوصیت دارای ویژگی های مشترک باشند. طولانیه.باز خواستی ادامشو توضیح بدم. :لبخند:
raminlich
جمعه 21 آذر 1393, 16:18 عصر
خیلی ممنون
راستش کلاسو می دونم چیه. نحوی کارش هم بلدم
فقط یه چیز دیگه رو نمی فهمم توی همین مبحث.
مثلا همین وراثت مفهومشو فهمیدم ولی نمی دونم تو کجای برنامه نویسی به کار میاد. منظورم parent و child هستش :ناراحت:
saeed410
جمعه 21 آذر 1393, 16:25 عصر
پس هنوز کلاسو نمیدونی چیه. کلاس همون شی. اگه نمیدونی شی چیه چطور میدونی کلاس چیه؟واسه اینکه وراثت رو در برنامه نویسی متوجه بشی باید برنامه نویسی شی گرایی یاد بگیری و کد نویسیشو یاد داشته باشی. اگر C# کار کردی یا ASP.net میتونم با مثال کمکت کنم.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.