Quire
TypeScript
TypeScript
ParadigmasıÇok paradigmalı; nesne yönelimli, fonksiyonel, generic, emirsel (imperative)
İlk çıkışı1 Ekim 2012)
TasarımcıAnders Hejlsberg
GeliştiriciMicrosoft
Kararlı sürüm5.4 (Mart 2024) (4 Mart 2024))
EtkilendikleriC#, Java, JavaScript, ActionScript
EtkiledikleriAtScript, AssemblyScript, Swift, Kotlin
İşletim sistemiÇapraz Platform
LisansApache License 2.0
Olağan dosya uzantıları.ts, .tsx
Web sitesitypescriptlang.org

TypeScript, Microsoft tarafından geliştirilen ve bakımı yapılan, açık kaynak kodlu bir programlama dilidir. JavaScript'in sıkı bir üst kümesi (superset) olan TypeScript, dile isteğe bağlı durağan tipleme (static typing) ve sınıf tabanlı nesne yönelimli programlama (OOP) imkanları ekler. 2012 yılındaki ilk çıkışından bu yana, özellikle büyük ölçekli kurumsal uygulamaların geliştirilmesinde endüstri standardı haline gelmiştir.

Genel Bakış#edit

TypeScript, JavaScript ekosistemindeki "kod karmaşıklığı" sorununu çözmek amacıyla Anders Hejlsberg (C# ve Delphi'nin yaratıcısı) tarafından tasarlanmıştır. TypeScript ile yazılan kodlar, derleme aşamasında (transpilation) standart JavaScript'e (ES3, ES5, ES6 veya daha güncel sürümler) dönüştürülür. Bu sayede yazılan kodlar; modern tarayıcılarda, Node.js, Deno ve Bun gibi tüm JavaScript çalışma ortamlarında sorunsuz bir şekilde yürütülebilir.

Temel Özellikler#edit

Tip Sistemi ve Güvenlik#edit

TypeScript'in en belirgin özelliği, değişkenlerin, fonksiyon parametrelerinin ve dönüş değerlerinin türlerinin önceden tanımlanabilmesidir. Bu sistem şunları sağlar:

  • **Hata Önleme:** Yazım hataları ve mantıksal tip uyumsuzlukları, kod henüz çalıştırılmadan derleme aşamasında fark edilir.
  • **Tip Çıkarımı (Type Inference):** Programcının açıkça belirtmediği durumlarda bile derleyici, kodun akışından değişkenin türünü tahmin edebilir.
  • **Arayüzler (Interfaces):** Karmaşık veri yapılarının şablonlarını tanımlayarak kodun sözleşmelere dayalı (contract-based) ilerlemesini sağlar.

Gelişmiş Programlama Yapıları#edit

TypeScript, standart JavaScript'te (ECMAScript) henüz yaygınlaşmamış veya sınırlı olan pek çok özelliği destekler:

  • **Generic Yapılar:** Veri tiplerinden bağımsız, yeniden kullanılabilir bileşenler ve fonksiyonlar oluşturulmasına olanak tanır.
  • **Enumlar ve Tuplelar:** Veri gruplandırma ve sabit setleri tanımlama işlemlerini daha güvenli hale getirir.
  • **Decoratorlar:** Sınıf ve metot davranışlarını meta-verilerle genişletmek için kullanılır (Angular gibi çerçevelerde yaygındır).

Araç Desteği#edit

TypeScript, modern entegre geliştirme ortamları (IDE) ile derin entegrasyona sahiptir. Visual Studio Code gibi araçlar; otomatik tamamlama (IntelliSense), anlık hata bildirimi ve güvenli kod yapılandırma (Refactoring) özellikleri sunarak geliştirici verimliliğini %30'a varan oranlarda artırabilir.

Derleme Süreci#edit

TypeScript kodu doğrudan tarayıcılar tarafından yorumlanamaz. Dönüştürme işlemi için şu araçlar yaygın olarak kullanılır:

  1. **tsc (TypeScript Compiler):** Dilin resmi derleyicisidir, hem tip kontrolü yapar hem de çıktı üretir.
  2. **Babel:** Genellikle büyük projelerde TypeScript'i JavaScript'e dönüştürmek için kullanılan popüler bir araçtır.
  3. **SWC ve Esbuild:** Pas ve Go dilleri ile yazılmış, milisaniyeler içinde derleme yapabilen yeni nesil hızlı araçlardır.

Kullanım Alanları#edit

Günümüzde TypeScript; **Angular**, **React**, **Vue.js** ve **Svelte** gibi modern ön uç (frontend) kütüphanelerinin vazgeçilmez parçasıdır. Arka uçta (backend) ise **NestJS** gibi çerçeveler tamamen TypeScript üzerine inşa edilmiştir.

Kaynakça#edit

Dış bağlantılar#edit

This article is mirrored from “TypeScript” on Türkçe Wikipedia, revision 36988301, written by Wikipedia's contributors and licensed CC BY-SA 4.0. Editing it here creates a Quire copy with its own history.

Synced with Wikipedia revision 36988301 · just now