
بزودی
حتماً! در اینجا شیگرایی (ObjectOriented Programming یا OOP) در جاوااسکریپت را به زبان ساده و فارسی توضیح میدهم:
شیگرایی (OOP) چیست؟
شیگرایی یک سبک برنامهنویسی است که در آن برنامهها بر اساس اشیا (Objects) ساخته میشوند. هر شی میتواند ویژگیها (Properties) و رفتارها (Methods) داشته باشد.
مثال ساده:
فرض کنید میخواهیم یک شی به نام `ماشین` داشته باشیم. این شی میتواند ویژگیهایی مثل رنگ و مدل و رفتارهایی مثل حرکت کردن یا توقف کردن داشته باشد.
شیگرایی در جاوااسکریپت
در جاوااسکریپت، اشیا به راحتی ساخته میشوند. چند روش برای ساخت شی وجود دارد:
۱. ساخت شی با استفاده از Object Literal
```javascript
let car = {
color: "قرمز",
model: "۲۰۲۴",
move: function() {
console.log("ماشین حرکت کرد!");
}
};
console.log(car.color); // خروجی: قرمز
car.move(); // خروجی: ماشین حرکت کرد!
```
۲. ساخت شی با استفاده از Constructor Function
```javascript
function Car(color, model) {
this.color = color;
this.model = model;
this.move = function() {
console.log("ماشین حرکت کرد!");
}
}
let myCar = new Car("آبی", "۲۰۲۳");
console.log(myCar.model); // خروجی: ۲۰۲۳
myCar.move(); // خروجی: ماشین حرکت کرد!
```
۳. استفاده از کلاسها (ES6 Classes)
```javascript
class Car {
constructor(color, model) {
this.color = color;
this.model = model;
}
move() {
console.log("ماشین حرکت کرد!");
}
}
let car1 = new Car("سفید", "۲۰۲۲");
console.log(car1.color); // خروجی: سفید
car1.move(); // خروجی: ماشین حرکت کرد!
```
مفاهیم اصلی شیگرایی
۱. کلاس (Class): قالب یا نقشهای برای ساخت اشیا.
۲. شی (Object): نمونهای از یک کلاس.
۳. وراثت (Inheritance): یک کلاس میتواند ویژگیها و رفتارهای کلاس دیگر را به ارث ببرد.
۴. کپسولهسازی (Encapsulation): مخفی کردن جزئیات پیادهسازی و فقط نمایش بخشهای مورد نیاز.
۵. چندریختی (Polymorphism): اشیا میتوانند رفتارهای متفاوتی داشته باشند، حتی اگر نام متد یکسان باشد.
جمعبندی
شیگرایی در جاوااسکریپت به شما کمک میکند تا کدهای مرتبتر، قابل فهمتر و قابل استفاده مجدد بنویسید. با استفاده از اشیا و کلاسها میتوانید برنامههای بزرگ و پیچیده را به بخشهای کوچکتر و قابل مدیریت تقسیم کنید.
اگر سوال بیشتری داشتی یا مثال بیشتری خواستی، بپرس!