تعداد بازدید: 2762

شی گرایی در زبان جاوا (oop)

شی گرایی یک سبک در برنامه نویسی و یک تفکر است که برنامه نویس با ماژول های برنامه خودش مانند اشیا برخورد می کنه .

به طور مثال انسان را در نظر بگیرید . انسان به صورت خام یک کلاس است که در زمان تعریف اون به ویژگی های جزیی تر اون دقت نمی کنیم.

حال آقای ریچارد رو در نظر بگیرید . این فرد از کلاس شخص به صورت یک شی است که ویژگی های خاص تری میشه براش تعریف کرد که شامل جنسیت و … میشه . آقای ریچارد یک شی از کلاس انسان است.

ویژگی ها در اشیا در دنیای واقعی معادل ویژگی ها در اشیا در برنامه نویسی است ، مثلا آقای ریچارد خوش اخلاق است.(کلاس شخص ، شی ریچارد ، ویژگی اخلاق برابر با خوب)

خوب پس شی در برنامه نویسی معادل شی در دنیای واقعی است.

شی یک مرحله بالاتر از تابع و متغیر است . چون توابع و متغیر های زیادی رو می تونه در خودش داشته باشه.

کلاس می تونه یه ساختار کلی یا یک دید کلی به ما بده و ما با اشیا که از روی کلاس میسازیم هر کدوم ویژگی های منحصر به فرد خودشون رو دارن که برخی از اون ها رو میتونه از کلاس به ارث ببره.

برنامه نویسی شی گرا

برنامه نویسی شی گرا از نحوه زندگی سلول ها برگرفته شده.

  • هر سلول نمونه ای از اصل است که خصوصیاتی رو از اصل خودش به ارث می بره که همون ژنتیک هست.
  • هر سلول مستقل از هم هستند.
  • سلول ها از هم قابل تمایز هستند.

اصول اولیه برای برنامه نویسی شی گرا

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

یک مثال برای مورد سوم : مثلا شی controller در خودش ویژگی ای داره که اون یک شی از کلاس model است.

مزایای برنامه نویسی شی گرا

  • می تونید از کدهاتون (کلاس هایی که ساختید) در سایر برنامه هاتون هم استفاده کنید.
  • عیب یابی سیستم رو راحت می کنه.
  • مفهوم Abstraction یا انتزاع : با یک دید کلی و بدون در نظر گرفتن جزئیات یک عنصر رو میسازیم (همون کلاس) و جزئیاتش رو میسپریم دست کاربر تا بتونه بر اساس نیاز جدید و سلیقه خودش اشیا رو از روش بسازه .(مثال شخص و آقای ریچارد).

 مفاهیم مهم در برنامه نویسی شی گرا

  • Encapsulation (کپسوله سازی)
  • Abstraction (انتزاع)
  • Inheritence (ارث بری)
  • polymorphism (چند ریختی)
  • instance (اشیا)
  • attribute (ویژگی)
  • method (معادل تابع)

اجزای مختلف یک کلاس در جاوا

قطعه کد زیر را در نظر بگیرید:

public class MyClass {
    public static void main(String args[]){
        System.out.println("hello world");
    }
}
  • کلمه کلیدی class
  • نام کلاس Class Name : که در قطعه کد بالا MyClass می باشد.
  • سطح دسترسی یا Access Modifier : که در متد main به صورت عمومی یا public می باشد.
  • main method : متد اصلی کلاس .
  • method return type : نوع خروجی متد که در قطعه کد بالا void یا بدون مقدار بازگشتی است.
  • بدنه اصلی متد که قطعه کدی است که کلمه hello world رو چاپ می کنه.

 

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای شی گرایی در زبان جاوا (oop)

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *