Ana içeriğe geç
Modül 1 · Ders 1 ders 2Kurstaki 1/14~10 min
Modül dersleri (1/2)

İlkel Türler ve Ek Açıklamalar

TypeScript, JavaScript'in yazılan bir üst kümesidir, yani mevcut JavaScript'in üzerine statik tür sözdizimi ekler. Çalışma zamanında, tüm TypeScript kodları saf JavaScript'e derlenir ve türler oluşturma işlemi sırasında tamamen kaybolur.

TypeScript sayesinde hataları kod tarayıcıda çalıştırılmadan önce yakalayabilir, böylece geliştirme sürecinizi daha sağlam, güvenli ve ölçeklenebilir hale getirebilirsiniz.


İlkel Türler

TypeScript, standart JavaScript temel türlerini destekler:

  • string: Karakter dizilerini temsil eder (örn. 'Alice', "Hello").
  • number: Hem tam sayılar hem de ondalık sayılar olmak üzere sayısal değerleri temsil eder (ör. 42, 3.14).
  • boolean: Doğruluk değerlerini temsil eder (true veya false).
  • null ve undefined: Bir değerin kasıtlı veya kasıtsız yokluğunu temsil eder.
TS
const username: string = 'Alice';
const score: number = 100;
const isActive: boolean = true;

Değişken Açıklamalar ve Çıkarım

TypeScript'te, iki nokta üst üste (:) ve ardından türü kullanarak bir tür ek açıklaması ekleyebiliriz.

Farklı türde bir değer atamaya çalışırsanız (örneğin, age'ye number olarak tanımlanan bir dize atamak), TypeScript derleyicisi, kod çalıştırılmadan hemen önce bir hata oluşturacaktır.


any Türünün Tehlikesi

any türü, TypeScript'e söz konusu değişken için tür denetimini tamamen kapatmasını söyleyen özel bir çıkış kapısıdır.

TS
let data: any = 42;
data = 'Hello'; // No error!
data.nonExistentMethod(); // No error at compile time, but it crashes at runtime!

any kullanmak, TypeScript kullanmanın tüm güvenlik avantajlarını ortadan kaldırır. Bu kötü bir uygulama olarak kabul edilir ve üretim kodunda neredeyse her zaman kaçınılmalıdır.


İşlev Açıklamaları ve void Türü

Bir fonksiyonun hem parametrelerine hem de dönüş değerine açıklama ekleyebiliriz:

TS
function calculateTax(price: number, taxRate: number): number {
  return price * taxRate;
}

Bir işlev herhangi bir değer döndürmezse (örneğin, yalnızca console.log döndürürse), dönüş türü void olur:

TS
function logMessage(message: string): void {
  console.log(message);
}

Kendin dene

Alıştırma 1: Yazılan Değişkenler

Egzersiz#ts.m1.l1.e1
Denemeler: 0Yükleniyor…

Açıkça yazılan üç değişkeni bildirin: 'Alice' değerine sahip dize olarak kullanıcı adı, 100 değerine sahip sayı olarak puan ve true değerine sahip boolean olarak isActive. Herhangi bir türü kullanmayın.

Düzenleyici yükleniyor…
İpucu göster

Her değişkenin adından sonra : string, : number ve : boolean sözdizimini kullanın.

3 denemeden sonra çözüm mevcut

Alıştırma 2: Selamlama İşlevi

Egzersiz#ts.m1.l1.e2
Denemeler: 0Yükleniyor…

string türünde bir parametre adını kabul eden ve 'Merhaba' biçiminde bir dize ve ardından adı döndüren, selamlama adında bir işlev oluşturun. Hem parametre türünü hem de dönüş türünü açıkça belirtin.

Düzenleyici yükleniyor…
İpucu göster

Fonksiyonu function greet(name: string): string { ... } olarak bildirin ve mesajı döndürün.

3 denemeden sonra çözüm mevcut

Alıştırma 3: Sıcaklık Dönüştürücü

Egzersiz#ts.m1.l1.e3
Denemeler: 0Yükleniyor…

celsiusToFahrenheit adında, sayı türünde bir santigrat parametresini kabul eden ve eşdeğer sıcaklığı Fahrenheit derece (sayı) cinsinden döndüren bir işlev bildirin. Formül santigrat * 9 / 5 + 32'dir. Hem parametre türünü hem de dönüş türünü açıkça belirtin.

Düzenleyici yükleniyor…
İpucu göster

Santigrat değerini 9 ile çarpın, 5'e bölün, 32 ekleyin ve sonucu, fonksiyondaki : sayı dönüş türüyle döndürün.

3 denemeden sonra çözüm mevcut

Alıştırma 4: İndirim Hesaplaması

Egzersiz#ts.m1.l1.e4
Denemeler: 0Yükleniyor…

Numarası türünde bir fiyat parametresini ve sayı türünde bir indirimPercent parametresini kabul eden ve son indirimli fiyatı bir sayı olarak döndüren, hesaplamaDiscount adlı bir işlev oluşturun. Hem parametre türlerini hem de dönüş türünü açıkça belirtin.

Düzenleyici yükleniyor…
İpucu göster

1'den 100'e bölünen indirim yüzdesini çıkarın ve ardından fiyatla çarpın. Parametrelere açıklama eklediğinizden ve değeri sayı olarak döndürdüğünüzden emin olun.

3 denemeden sonra çözüm mevcut