TypeScript Dersleri

TypeScript’te Nesneler (Objects) ve Tip Yönetimi

eminbasbayan

eminbasbayan

3 dk okuma
TypeScript’te Nesneler (Objects) ve Tip Yönetimi
🔍 Büyütmek için tıklayın

TypeScript, JavaScript’in üzerine geliştirilmiş, tip güvenliği sağlayan bir programlama dilidir. En güçlü özelliklerinden biri, nesnelerin yapısını önceden belirleyebilmemiz ve bu sayede kodumuzu daha sağlam ve anlaşılır hale getirebilmemizdir.

Bu yazıda, TypeScript’te nesne (object) tanımlamanın temellerini, tip anotasyonlarını, sabit (readonly) özellikleri, nesne içinde fonksiyon kullanımını ve özel tip tanımlarını (type alias) öğreneceğiz.

Nesne Tanımlama ve Tip Anotasyonu

JavaScript’te bir nesne, anahtar-değer çiftlerinden oluşan bir yapıdır. TypeScript’te ise bu nesnelerin sahip olması gereken alanları ve bu alanların türlerini tanımlayarak daha kontrollü bir yapı kurabiliriz. Buna tip anotasyonu denir.

Örnek:

let ogrenci: { ad: string; yas: number; aktif: boolean } = { ad: "Zeynep", yas: 17, aktif: true };

Bu örnekte, ogrenci adlı nesne üç alan içerir: ad (metin), yas (sayı) ve aktif (doğru/yanlış). TypeScript bu tanıma göre, bu alanlara yanlış türde veri girilmesine izin vermez.

Bu, hem hataları önler hem de kodun ne yaptığı daha kolay anlaşılır hale gelir.

Readonly Özellikler

Bazı nesne özelliklerinin değiştirilememesi istenebilir. Örneğin bir öğrencinin numarası bir kere belirlendikten sonra bir daha değişmemelidir. Bu gibi durumlar için TypeScript, readonly anahtar kelimesini sunar.

Örnek:

let ogrenci: { readonly numara: number; ad: string } = { numara: 12345, ad: "Ali" };

Bu nesne oluşturulduktan sonra ogrenci.numara alanı değiştirilemez. Değiştirmeye çalışırsanız TypeScript hata verir. Bu da önemli bilgilerin kazara değiştirilmesini engeller.

Nesne İçinde Fonksiyon (Metot) Tanımlama

TypeScript’te nesneler yalnızca veri değil, o verilerle ilgili işlemleri tanımlayan fonksiyonları da içerebilir. Bu tür fonksiyonlara metot denir.

Örnek:

let urun: { ad: string; fiyat: number; indirimHesapla: (oran: number) => number; } = { ad: "Kulaklık", fiyat: 300, indirimHesapla: function (oran) { return this.fiyat - this.fiyat * oran; } };

Burada indirimHesapla, ürün fiyatına göre indirim uygulayan bir fonksiyondur. Bu sayede veriye bağlı işlemler de nesnenin içinde tutulabilir.

Type Alias (Özel Tip Tanımı)

Kod yazarken aynı türde nesne tanımını birden fazla yerde kullanmanız gerekebilir. Her defasında uzun uzun yazmak yerine, bu yapıya bir isim verip her yerde o ismi kullanabilirsiniz. Bu yapıya type alias denir.

Örnek:

type Ogrenci = { ad: string; yas: number; aktif: boolean; }; let ogr1: Ogrenci = { ad: "Ayşe", yas: 16, aktif: true }; let ogr2: Ogrenci = { ad: "Burak", yas: 17, aktif: false };

Bu sayede kod hem daha kısa hem daha okunabilir hale gelir. Ayrıca ileride bu tipte bir değişiklik yapmanız gerekirse sadece bir yerde değiştirmeniz yeterlidir.

DRY Prensibi ve Tekrarlı Tiplerden Kaçınma

DRY (Don't Repeat Yourself) prensibi, yazılım geliştirmede tekrar eden kodlardan kaçınmayı öneren temel kurallardan biridir. Özellikle benzer nesne yapıları tekrar tekrar yazıldığında bu kural ihlal edilmiş olur.

Kötü örnek:

let kitap1: { ad: string; sayfaSayisi: number } = { ad: "Roman", sayfaSayisi: 250 }; let kitap2: { ad: string; sayfaSayisi: number } = { ad: "Hikaye", sayfaSayisi: 150 };

İyi örnek (type alias kullanımı ile):

type Kitap = { ad: string; sayfaSayisi: number }; let kitap1: Kitap = { ad: "Roman", sayfaSayisi: 250 }; let kitap2: Kitap = { ad: "Hikaye", sayfaSayisi: 150 };

Bu sayede hem tekrar eden kodlar ortadan kalkar hem de tip yapısını bir yerde düzenleyerek tüm ilgili nesneleri güncellemek kolaylaşır.

Sonuç

TypeScript’te nesneler yalnızca veri depolamak için değil, aynı zamanda bu verileri düzenli, güvenli ve tekrar kullanılabilir hale getirmek için kullanılır. Tip anotasyonları sayesinde hataları erken aşamada fark edebilir, readonly ile sabit verileri koruyabilir, metotlarla nesneye işlev kazandırabilir ve type alias'larıyla kodunuzu sadeleştirebilirsiniz.

DRY prensibi sayesinde tekrar eden yapıları önleyerek daha bakımı kolay ve temiz bir kod tabanı oluşturabilirsiniz. Bu beceriler özellikle büyük projelerde hem zaman hem hata maliyetini ciddi şekilde azaltır.

Etiketler

#Eğitimler#TypeScript Dersleri

İlgili Yazılar

Bu konuyla ilgili diğer yazılarımızı da inceleyebilirsiniz

TypeScript’e Giriş: Nedir, Neden Kullanılır ve JavaScript’ten Farkı Ne?
Genel

TypeScript’e Giriş: Nedir, Neden Kullanılır ve JavaScript’ten Farkı Ne?

Yazılım dünyasında JavaScript, özellikle web geliştirme alanında en çok kullanılan programlama dillerinden biridir. Ancak JavaScript her ne kadar esnek ve güçlü bir dil olsa da, bu esnekliği bazen hatalara davetiye çıkarabilir. İşte bu noktada devreye **TypeScript**</STRO

3 dk
TypeScript Kurulum ve Geliştirme Ortamı Rehberi
Genel

TypeScript Kurulum ve Geliştirme Ortamı Rehberi

Programlamaya başlamak, yalnızca kod yazmakla değil, aynı zamanda doğru araçları kullanmakla da ilgilidir. Özellikle modern dillerden biri olan **TypeScript** ile çalışmak istiyorsan, öncelikle bilgisayarında bir geliştirme ortamı hazırlaman gerekir. Bu y

3 dk
TypeScript Derleyici ve Ayarları
Genel

TypeScript Derleyici ve Ayarları

TypeScript ile yazılım geliştirmeye başladığında, sadece kod yazmak yetmez. Kodlarının **nasıl çalıştırılacağını, nasıl derleneceğini ve nasıl düzenli tutulacağını** da bilmen gerekir. İşte burada devreye **TypeScript derleyicisi (compiler)**</e

3 dk
TypeScript’te Debugging (Hata Ayıklama)
Genel

TypeScript’te Debugging (Hata Ayıklama)

Kod yazmak bir şeydir, yazdığın kodun neden çalışmadığını bulmak başka bir şeydir. Yazılım geliştirmenin en kritik aşamalarından biri de **debugging**, yani **hata ayıklama** sürecidir. TypeScript ile çalışırken hataları fark etmek

3 dk
TypeScript’te Temel Veri Tipleri ve Kullanımları
Genel

TypeScript’te Temel Veri Tipleri ve Kullanımları

TypeScript, JavaScript’in daha güvenli ve kurallı bir versiyonudur. TypeScript kullanmanın en büyük avantajlarından biri, değişkenlerin türlerini belirleyerek yazılımcıya hataları erken aşamada göstermesidir. Bu sayede daha sağlam ve anlaşılır kodlar yazmak mümkün olur. Bu yazıda TypeS

3 dk
TypeScript’te Fonksiyonlar ve İlgili Ayarlar
Genel

TypeScript’te Fonksiyonlar ve İlgili Ayarlar

TypeScript’te fonksiyonlar, yalnızca kodu düzenli hale getirmek için değil, aynı zamanda hataları erken yakalamak ve daha güvenli yazılım geliştirmek için büyük önem taşır. Bu yazıda TypeScript’te fonksiyonları nasıl tanımlarız, nasıl daha güvenli hale getiririz ve hangi ayarlarla yazdığımız f

3 dk