Intern
Proqramlaşdırma obyekt yönümlü paradigması (PO) nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Obyekt yönümlü proqramlaşdırma (OOP) — bu proqram təminatını inkişaf etdirmək üçün yanaşmadır və proqramın qarşılıqlı təsir edən obyektlər toplusu kimi təqdim olunmasına əsaslanır, hər obyekt sinfinin nümunəsidir və vəziyyətə (xüsusiyyətlər) və davranışa (metodlar) malikdir.
OOP-nin əsas prinsipləri:
- İnkapsulyasiya: Məlumatların (xüsusiyyətlərin) və bu məlumatlarla işləmək üçün metodların bir məntiqi vahid — obyekt daxilində toplanması. Ob’ektin daxili həyata keçirilməsinin xarici dünyadan gizlədilməsi.
class Dog { private var name: String // Gizli xüsusiyyət init(name: String) { self.name = name } func bark() { // Əlaqə metodu print("\(name) havlayır!") } } - Miras: Mövcud sinflərdən (üst sinflər) yeni sinflər (alt sinflər) yaratmağa imkan verən mexanizm, onların xüsusiyyətlərini və metodlarını miras alır. Kodun təkrar istifadəsini və sinif hiyerarşilərinin qurulmasını təmin edir.
class Animal { func eat() { print("Heyvan yeyir.") } } class Cat: Animal { // Cat, Animal-dan miras alır func meow() { print("Pişik miyavlayır.") } } - Çox formulluluq: Müxtəlif siniflərin obyektlərinin eyni mesaj (metod çağırışı) üzərində fərqli cavab vermə qabiliyyəti. Sistemin elastikliyini və genişləndirilə bilməsini təmin edir.
class Shape { func draw() { // Əsas həyata keçirmə } } class Circle: Shape { override func draw() { // draw metodunun yenidən yazılması print("Dairə çəkilir.") } } class Square: Shape { override func draw() { // draw metodunun yenidən yazılması print("Kvadrat çəkilir.") } } let shapes: [Shape] = [Circle(), Square()] // Müxtəlif tiplərdə obyektlər array-i for shape in shapes { shape.draw() // Hər obyekt üçün fərqli draw tətbiqi çağırılır } - Abstraksiya: Bir obyekt və ya sistemin əsas xarakteristikalarının vurğulanması, önəmli olmayan detallardan imtina edilməsi. Real dünya modelləri ilə daha yüksək səviyyədə işləməyə imkan verir.
OOP-nin üstünlükləri:
- Kodun təkrar istifadəsi
- Daha yaxşı modul və strukturlaşdırma
- Baxım və genişləndirmə asanlığı
- Real dünyanı daha yaxşı anlama və modelləşdirmə
OOP-nin çatışmazlıqları:
- Sadə tapşırıqlar üçün mürəkkəbləşmə ehtimalı
- Bəzi hallarda daha çox resurs (yaddaş, vaxt) sərfiyyatı
Swift, Objective-C və digər proqramlaşdırma dillərində mürəkkəb və saxlanılan tətbiqlər yaratmaq üçün istifadə olunur.