آموزش پاسکال شی‌گرا

کلاس چیست

کلاس چیست

کلاس چیست به مجموعه‌ای از فیلدها و متدها (پروسیجر ها و توابع) گه برای انجام وظیفه خاصی یا یکدیگر کارمیکنند کلاس گفته میشود
به طور خلاصه این که از کلاس برای کپسوله کردن وظایف استفاده میشود
تعجب کرده اید ؟ برای این که تعجب شما مرتفع شود بهتر است کمی فکر کرده و ببینید که ایا تاکنون کپسول خورده اید ؟!
اگر جواب شما مثبت است بهتر است باز هم فکر کنید و ببینید که آیا از محتوای کپسول خبر داشته اید؟
مطمئنا پاسخ شما منفی است
به شما تبریک میگوییم شما مفهوم کپسوله  encapsulation را درک کرده اید

برای ان که مفهوم کلاس را بهتر درک کنید باید یک تلویزیون را در نظر بگیرید
که از محتویات و نحوه عملکرد داخل آن بی اطلاع هستید
اما با استفاده از ورودی های و خروجی ها ان می توانید از آن استفاده کرده و به هدف خود دسترسی پیدا کنید
نمای بیرونی یک کلاس شبیه به نمای بیرونی یک تلویزیون در بسته است
بدین مفهوم که برنامه نویسان میتوانند از کلاس مورد نظر برای مقصود خاصی استفاده کنند
بدون این که از پیاده سازی درون آن اطلاعی داشته باشند
برای مقصود خاصی استفاده کنند بدون این که ازپیاده سازی درون آن اطلاعی داشته باشند
برنامه نویسی شی‌گرا در حقیقت برنامه نویسی ساخت یافته (Structured) توسعه داده شده است
که کپسوله کردن داده ها و قابلیت استفاده مجدد از کدها نوشته شده را مورد تاکید قرارداده است
زمانی که شما یک شی یا به طور عامیانه یک کلاس را به وجود می آورید
هر برنامه نویس دیگری نیز میتواند در برنامه های مختلف از آن استفاده کند
لذا کاهش مدت زمان طراحی و افزیش کارآیی مهم ترین مسایلی هستند که برنامه نویسی شی گرا به ارمغان اورده است
یک شی با کلاس در حقیقت یک نوع داده است که داده ها و عملیات روی داده ها را به صورت یک واحد یکپارچه کپسوله میکند
تا قبل از به وجود آمدن برنامه نویسی شی‌گرا داده ها و عملگرها (توابع و پروسیجر ها )به صورت عناصری جدا از هم تصور میشوند
اگر مفهوم رکورد را در برنامه نویسی پاسکال درک کرده باشید
به راحتی میتوانید مفهوم شی را نیز دریابید تعجب کرده اید؟!
بهتر است به جای تعجب به رکورد زیر توجه کنید

Type
 StudentRec = record
   Name : string [20];
   Family : string [30];
end;

همان طور که مشاهده میکنید رکورد متشکل از فیلدهای است که هر فیلد محتوی داده است
و هر فیلد نوع داده ای خاص خود را دارد
رکوردها امکان دسترسی به مجموعه‌ای از عناصر مختلف داده‌ای را فراهم می آورند
اشیا نیز مجموعه ای از عناصر داده ای هستند
با این تفاوت که رکورد فقط شامل عناصر داده ای است
اما شی علاوه بر عناصر داده ای شامل توابع و پروسیجر نیز میباشد که روی عناصر داد های عمل میکنند
به این توابع و پروسیجر ها متد گفته میشود
برای مثال به کلاس زیر توجه کنید

type
 TStudent = class
   Name :string [20];
   Family :string [30];
   Function GetName : string;
   Function GetFamily : string;
end;

توجه داشته باشید که تعریف کلاس باعث ایجاد شی در حافظه نخواهد شد و این موضوع در مورد رکوردها نیز صادق است
نحوه سترسی به عناصر داده ای یا متدهای مربوط از عملگر نقطه  ,  و سپس ذکر شناسه عنصر داده ای یا متد استفاده میشود

برای مثال به عبارات زیر توجه کنید

Student.Name :='Wiki';
Student.Family :='Delphi';
ShowMessage(Student.GetName);

 

[adinserter block="1"]
3.9/5 - (7 امتیاز)

نوشته های مشابه

دیدگاهتان را بنویسید

دکمه بازگشت به بالا