Gelişmiş Sınıf Özellikleri
Temiz, modüler ve nesne yönelimli TypeScript kodu yazmak için soyut sınıflar, erişim belirleyicileri ve statik üyeler gibi gelişmiş sınıf özelliklerini keşfedin.
Gelişmiş Sınıf Özellikleri, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 3 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 3 dersten oluşur.
İleri Düzey Sınıf Özelliklerine Giriş
İleri Düzey Sınıf Özelliklerine Giriş
TypeScript, modüler, ölçeklenebilir ve bakımı kolay nesne yönelimli kod yazmanıza yardımcı olan çeşitli gelişmiş sınıf özellikleri sunar.
Bu derste erişim belirleyicilerini, soyut sınıfları, statik üyeleri ve daha fazlasını öğreneceksiniz.

Gelişmiş Sınıf Özelliklerine Genel Bakış
İleri Düzey Sınıf Özelliklerine Giriş
TypeScript, modüler, ölçeklenebilir ve bakımı kolay nesne yönelimli kod yazmanıza yardımcı olan çeşitli gelişmiş sınıf özellikleri sunar.
Bu derste erişim belirleyicilerini, soyut sınıfları, statik üyeleri ve daha fazlasını öğreneceksiniz.

Erişim Belirleyicileri
Erişim Belirleyicileri
TypeScript, sınıf üyelerinin görünürlüğünü denetlemek için üç erişim belirleyicisi sunar:
public: Her yerden erişilebilir (varsayılan).private: Yalnızca sınıf içinde erişilebilir.protected: Sınıf içinde ve alt sınıflarında erişilebilir.
class Person {
public name: string;
private age: number;
protected role: string;
constructor(name: string, age: number, role: string) {
this.name = name;
this.age = age;
this.role = role;
}
}
class Employee extends Person {
getRole(): string {
return this.role; // Accessible because it's protected
}
}Soyut Sınıflar
Soyut Sınıflar
Soyut sınıflar, diğer sınıflar için taslak olarak kullanılır. Doğrudan örneklenemezler ve soyut yöntemler içerebilirler.
abstract class Shape {
abstract getArea(): number;
}
class Circle extends Shape {
constructor(public radius: number) {
super();
}
getArea(): number {
return Math.PI * this.radius ** 2;
}
}
const circle = new Circle(5);
console.log(circle.getArea()); // 78.54Statik Üyeler
Statik Üyeler
Statik üyeler, sınıfın herhangi bir örneği yerine doğrudan sınıfa aittir. Bunlara sınıf adı kullanılarak erişilir.
class MathUtils {
static PI = 3.14;
static calculateCircleArea(radius: number): number {
return this.PI * radius ** 2;
}
}
console.log(MathUtils.PI); // 3.14
console.log(MathUtils.calculateCircleArea(5)); // 78.5Getiriciler ve Ayarlayıcılar
Getiriciler ve Ayarlayıcılar
Getiriciler ve ayarlayıcılar, bir sınıftaki özelliklere nasıl erişileceğini veya bunların nasıl değiştirileceğini denetlemenize olanak tanır.
class Person {
private _name: string;
constructor(name: string) {
this._name = name;
}
get name(): string {
return this._name;
}
set name(newName: string) {
this._name = newName;
}
}
const person = new Person('Alice');
console.log(person.name); // Alice
person.name = 'Bob';
console.log(person.name); // BobSalt Okunur Özellikler
Salt Okunur Özellikler
readonly belirleyicisi, bir özelliğin yalnızca başlatma sırasında ayarlanabilmesini ve daha sonra değiştirilememesini sağlar.
class Vehicle {
readonly make: string;
constructor(make: string) {
this.make = make;
}
}
const car = new Vehicle('Toyota');
console.log(car.make); // Toyota
// car.make = 'Honda'; // Error: Cannot assign to 'make' because it is a read-only property.Özel ve Korumalı Yapıcılar
Özel ve Korumalı Yapıcılar
Sınıflar, nerede ve nasıl örnekleneceklerini denetlemek için özel veya korumalı yapıcılara sahip olabilir.
class Singleton {
private static instance: Singleton;
private constructor() {}
static getInstance(): Singleton {
if (!this.instance) {
this.instance = new Singleton();
}
return this.instance;
}
}
const singleton = Singleton.getInstance();
console.log(singleton);Alıştırma Görevi
Alıştırma Görevi
protected bir yapıcıya sahip bir sınıf oluşturun ve bunu bir alt sınıfta genişletin. Alt sınıftaki korumalı özelliklere erişmek için yöntemler ekleyin.
Tebrikler!
Tebrikler!
Erişim belirleyicileri, soyut sınıflar, statik üyeler ve daha fazlası gibi gelişmiş sınıf özelliklerini öğrendiniz. Temiz ve verimli nesne yönelimli TypeScript kodu yazmak için bu kavramları uygulayın!

Sıkça Sorulan Sorular
“Gelişmiş Sınıf Özellikleri” dersi ücretsiz mi?
Evet — “Gelişmiş Sınıf Özellikleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 3 dersten oluşur.
“Gelişmiş Sınıf Özellikleri” dersinde ne öğreneceğim?
Temiz, modüler ve nesne yönelimli TypeScript kodu yazmak için soyut sınıflar, erişim belirleyicileri ve statik üyeler gibi gelişmiş sınıf özelliklerini keşfedin. TypeScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te TypeScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 2. dersidir.
“Gelişmiş Sınıf Özellikleri” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her TypeScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Gelişmiş Tür Daraltma
- Gelişmiş Sınıf Özellikleri
- Koşullu Türler