Intern
Obyekt yönümlü proqramlaşdırma (OOP) nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Obyekt yönümlü proqramlaşdırma (OOP) — bu "obyektlər" anlayışına əsaslanan proqramlaşdırma paradigmasıdır; bu obyektlər məlumatlar (adətən atributlar və ya xüsusiyyətlər adlandırılan sahələr şəklində) və kodu (adətən metodlar və ya davranışlar adlandırılan prosedurlar şəklində) ehtiva edə bilər.
OOP-nin əsas prinsipləri:
- İnkapsulyasiya: Məlumatlar və bu məlumatlar üzərində işləyən metodların birləşdirilməsi (obyekt). Obyektin daxili vəziyyətini gizlədir və yalnız lazım olan interfeysi açıq edir.
- Abstraksiya: Obeyektin əsas xüsusiyyətlərinə diqqət yetirmək, vacib olmayan detalları nəzərə almamaq. Çətin sistemləri sadələşdirilmiş formada təqdim edir.
- Miras: Bir sinfin (alt sinf və ya törəmə sinf) başqa sinfin (əsas və ya baza sinfi) xüsusiyyətlərini və metodlarını miras alma mexanizmi. Kodun təkrar istifadəsini təşviq edir.
- Polimorfizm: Eyni interfeysi müxtəlif əsas məlumat tipləri üçün istifadə etmək imkanı. Müxtəlif siniflərin obyektləri eyni metod çağırışına fərqli cavab verə bilər, bu onların konkret tipindən asılıdır.
C#-da OOP-nin əlavə anlayışları:
- Siniflər: Obyektlər yaratmaq üçün şablonlar və ya planlar. Obyektlərin quruluşunu və davranışını müəyyən edir.
- Obyektlər: Yaddaşda sinif nümunələri.
- Interfeyslər: Bu interfeysi həyata keçirən sinfin müəyyən etməli olduğu üzvlər (metodlar, xüsusiyyətlər, hadisələr) toplusunu təyin edən müqavilələr. Abstraksiya və çoxsaylı tətbiqlər təmin edir.
OOP-nin üstünlükləri:
- Kodun təkrar istifadəsi.
- Daha yaxşı modulyarlıq və kodun təşkili.
- Böyük sistemlərin baxımı və genişləndirilməsi asanlaşır.
- Obeyektlər vasitəsilə real dünya ilə daha yaxşı uyğunlaşır.
Nümunə:
// Nümunə sinif
public class Dog
{
// Sahə (atribut)
public string Name { get; set; }
// Metod (davranış)
public void Bark()
{
Console.WriteLine($"{Name} Woof deyir!");
}
}
// Obeyektin yaradılması və istifadəsi nümunəsi
/*
Dog myDog = new Dog(); // Dog sinifindən obyekt yaradılması
myDog.Name = "Buddy"; // atributun dəyərinin təyin olunması
myDog.Bark(); // metodun çağırılması
Dog anotherDog = new Dog { Name = "Lucy" }; // başqa bir obyektin yaradılması və başlanğıc dəyər verilməsi
anotherDog.Bark();
*/