Yeni Başlayanlar İçin TypeScript Arayüzlerine Giriş

TypeScript arayüzleri, nesnelerin yapısını tanımlamanıza ve belirli şekil gereksinimlerine uymalarını sağlamanıza olanak tanıyan güçlü bir özelliktir. Bu kılavuz, TypeScript arayüzlerinin temellerini, bunların nasıl etkili bir şekilde tanımlanacağı ve kullanılacağını da içerecek şekilde size tanıtacaktır.

Arayüz Nedir?

TypeScript'te bir arayüz, bir nesnenin şeklini tanımlamanın bir yoludur. Bir nesnenin hangi özelliklere ve yöntemlere sahip olması gerektiğini ve türlerini tanımlamanıza olanak tanır. Arayüzler, kodunuzda tutarlılık ve netlik sağlamanıza yardımcı olur.

Bir Arayüz Tanımlama

Bir arayüzü tanımlamak için, interface anahtar sözcüğünü, ardından arayüz adını ve nesne şeklini kullanın:

interface Person {
  name: string;
  age: number;
}

Bu örnekte, Kişi arayüzü, Kişi nesnesinin dize türünde bir ad ve sayı türünde bir yaş içermesi gerektiğini belirtir.

Arayüzleri Kullanma

Bir arayüzü tanımladıktan sonra, onu nesnelerin tür denetimini yapmak, parametreleri çalıştırmak ve değerleri döndürmek için kullanabilirsiniz. Bu, nesnelerin tanımlanan şekle uymasını sağlar.

Nesnelerle Bir Arayüz Kullanma

Bir nesnenin tip kontrolünü yapmak için Person arayüzünün nasıl kullanılacağı şöyledir:

const person: Person = {
  name: "Alice",
  age: 30
};

Bu örnekte, person nesnesi, Person arayüzüne bağlı kalarak, hem name hem de age öğelerinin doğru tiplerde olmasını sağlar.

Fonksiyonlarla Arayüzleri Kullanma

Arayüzler ayrıca fonksiyon parametrelerini tip denetimi yapmak ve değerleri döndürmek için de kullanılabilir:

function greet(person: Person): string {
  return `Hello, ${person.name}!`;
}

Bu örnekte, greet fonksiyonu Person türünde bir parametre kabul eder ve bir karşılama mesajı döndürür.

İsteğe bağlı Özellikler

Arayüzler, ? değiştiricisini kullanarak isteğe bağlı özellikler içerebilir. Bu, özelliğin mevcut olabileceğini veya olmayabileceğini gösterir:

interface Person {
  name: string;
  age: number;
  email?: string;
}

Bu örnekte, email isteğe bağlı bir özelliktir ve Person nesnesine dahil edilebilir veya edilmeyebilir.

Salt Okunur Özellikler

Ayrıca özellikleri salt okunur olarak da tanımlayabilirsiniz; bu, başlatmadan sonra değiştirilemeyecekleri anlamına gelir:

interface Person {
  readonly name: string;
  age: number;
}

Bu örnekte, name özelliği salt okunurdur ve bir kez ayarlandıktan sonra değiştirilemez.

Arayüzleri Genişletme

Arayüzler diğer arayüzleri genişletebilir ve mevcut şekiller üzerine inşa etmenize olanak tanır:

interface Employee extends Person {
  employeeId: number;
}

Bu örnekte, Employee arayüzü, Person arayüzünü genişleterek bir employeeId özelliği ekler.

Çözüm

TypeScript arayüzleri, kodunuzda nesne şekillerini tanımlamak ve uygulamak için temel bir özelliktir. Arayüzleri kullanarak tutarlılığı sağlayabilir, kod okunabilirliğini iyileştirebilir ve TypeScript'in güçlü tür denetimi yeteneklerinden yararlanabilirsiniz. Daha sağlam ve sürdürülebilir kod oluşturmak için TypeScript projelerinize arayüzleri dahil etmeye başlayın.