Geri

TypeScript Function Type (Fonksiyon Tipleri)

TypeScript’te function type, bir fonksiyonun alacağı parametrelerin ve döndüreceği değerin türünü tanımlamak için kullanılır. Bu, hem kodun daha okunabilir hem de daha güvenli hale gelmesini sağlar.

Fonksiyon Tipi Nasıl Tanımlanır?

let greet: (name: string) => string;
greet = (name) => `Hello, ${name}!`;

`greet` değişkeni yalnızca bir string parametre alıp string döndüren fonksiyonları kabul eder. Yanlış türde parametre atanırsa TypeScript hata verecektir.

Birden Fazla Parametre ve Dönüş Değeri

let calculate: (a: number, b: number, op: string) => number;
calculate = (a, b, op) => {
  return op === "add" ? a + b : a - b;
};

Function type ile çok parametreli fonksiyonların yapısı açıkça tanımlanabilir. Bu sayede yanlış kullanım kolayca fark edilir.

Function Type İçin Type Alias Kullanımı

type Logger = (message: string) => void;

const log: Logger = (msg) => {
  console.log("[LOG]:", msg);
};

`type` alias ile tekrar kullanılabilir fonksiyon tipleri tanımlanabilir. Bu, özellikle callback fonksiyonları için oldukça pratiktir.

Fonksiyon Parametresi Olarak Fonksiyon

function handleClick(callback: () => void) {
  callback();
}

Bir fonksiyonun parametresi olarak başka bir fonksiyon tanımlayabiliriz. Bu yapılar, event handler'lar ve async işlemler gibi senaryolarda sıkça kullanılır.

Optional ve Varsayılan Parametreler

function sendEmail(to: string, subject: string = "No Subject", body?: string): void {
  console.log(`To: ${to}, Subject: ${subject}, Body: ${body ?? "Empty"}`);
}

Fonksiyon parametreleri `?` ile opsiyonel hale getirilebilir veya varsayılan değer atanabilir. Bu özellik, daha esnek API'ler yazmamıza yardımcı olur.

Function Type ile Type Safety Avantajı

Function type kullanımı, yanlış parametre gönderme, dönüş değeri tipi hatası gibi durumları önceden fark etmemizi sağlar. Bu da uygulamanın kararlılığını ve bakım kolaylığını artırır.

Geri