JavaScript OOP (Prototip) #2
Nov 27 2022
Merhaba arkadaşlar, ben Bennison, Bu blogda Javascript'te OOP'nin nasıl çalıştığını ve klasik OOP'tan nasıl farklı olduğunu anlatacağım. Bu makaleyi okumadan önce, lütfen OOP'nin temelleri hakkında olan önceki blogumu okuyun.

Merhaba arkadaşlar, ben Bennison, Bu blogda Javascript'te OOP'nin nasıl çalıştığını ve klasik OOP'tan nasıl farklı olduğunu anlatacağım. Bu makaleyi okumadan önce, lütfen OOP'nin temelleri hakkında olan önceki blogumu okuyun .
Prototip nedir?
- Javascript'te prototip denen bir şeye sahibiz, JavaScript'te her nesne belirli bir prototipe bağlanacaktır. Yani her nesnenin prototipleri vardır. prototip ayrıca özellikler ve yöntemler içerir.
- Burada önemli olan prototip metotları ve özelliklerine nesne tarafından erişilebilmesidir.
- Klasik OOP'de, somutlaştırma adı verilen sınıftan bir nesne başlatılır. Burada sınıf, Nesneleri oluşturmak için yalnızca bir plandır.
- Ancak Javascript'te bu terminoloji farklıdır. Burada her nesne diğer nesnelerle bağlantılıdır ve bu nesnelere prototip adı verilir .

- Prototip kalıtımı, yöntemleri içeren bir prototip ve bu prototipe bağlı tüm nesneler tarafından erişilebilen prototipler anlamına gelir.
- Böylece nesne, yöntemleri ve özellikleri prototipten devralır, buna prototip kalıtımı denir. bu miras, bir sınıfın diğer sınıftan miras aldığı sınıf mirasından farklıdır. Ancak bu durumda, temel sınıftan miras alınan örnek.
- Yukarıdaki görüntüde, javascript OOP oku yukarıyı gösteriyor, bu, nesnenin davranışlarını prototiplere devrettiği anlamına geliyor.
- Klasik OOP'de, yöntemler sınıftan örneklere (nesnelere) kopyalanır.
const numbers = [1, 2, 3, 4,5];
numbers.map((num) => num * 2)


- İşlevlerden nesneler oluşturmak için bir yapıcı işlevi kullanılır. Array ve map yöntemleri gibi yerleşik nesneler bu şekilde uygulanır.
- Bu, yapıcı işlevlere modern bir alternatiftir. ES6 Sınıfları, yapıcı işleviyle aynı şekilde çalışır. ES6 sınıfı Klasik bir OOP gibi davranmaz. Sahne arkasında, ES6 sınıfları, Yapıcı işlevlerle uygulanır.
class User {
constructor(firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
getFullName() {
console.log(this.firstName + ' ' + this.lastName);
}
}
const user = new User('Bennison', 'J');
console.log(user); // { firstName: 'Bennison', lastName: 'J' }
console.log(user.hasOwnProperty('firstName')); // true
console.log(user.hasOwnProperty('getFullName')); // false
- “ object.create()” yöntemi, bir nesneyi bir prototip nesneye bağlamanın en kolay yoludur.
const objOne = {
firstName: 'Bennison',
lastName: 'J',
getFullName: function () {
console.log(this.firstName + ' ' + this.lastName);
}
};
const objTwo = Object.create(objOne);
console.log(objTwo); // {}
objTwo.getFullName(); // Bennison J
- Umarım bu Blog'da Javascript'te prototip kalıtımın temellerini öğrenmişizdir, yukarıdaki örnekleri anlayamadıysanız merak etmeyin, gelecek bloglarımda bu kavramlar hakkında daha fazla anlatacağım. Bu blogu okuduğunuz için teşekkürler, Yakında görüşürüz.
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'