Sobes.tech
Junior — Middle

Nesne yönelimli programlamanın temel kalıplarını sayabilir misin?

sobes.tech yapay zeka

AI'dan gelen yanıt

Nesne yönelimli programlamanın (OOP) temel kalıpları şunları içerir:

  • Kalıtım (Inheritance): var olan sınıflardan yeni sınıflar oluşturmaya olanak tanır ve özellikleri ile metodları miras alır.
  • Kapsülleme (Encapsulation): nesnenin iç uygulama detaylarını gizler ve yalnızca kamu metodları aracılığıyla erişim sağlar.
  • Çok Biçimlilik (Polymorphism): farklı sınıflardan nesnelerin aynı mesajlara (metodlara) farklı şekilde yanıt verme yeteneği.
  • Soyutlama (Abstraction): nesnenin temel özelliklerini vurgular, önemsiz detayları gizler.

Bu kalıplar, esnek, genişletilebilir ve sürdürülebilir programlar oluşturmaya yardımcı olur.

Go dilinde örnek (arayüzler kullanılarak çok biçimlilik):

package main
import "fmt"

type Animal interface {
    Speak() string
}

type Dog struct{}
func (d Dog) Speak() string {
    return "Hav!"
}

type Cat struct{}
func (c Cat) Speak() string {
    return "Miyav!"
}

func main() {
    animals := []Animal{Dog{}, Cat{}}
    for _, animal := range animals {
        fmt.Println(animal.Speak())
    }
}

Bu örnekte, farklı tipler aynı arayüzü uygular ve çok biçimlilik gösterir.