TypeScript Kazandı. Bize Neler Kazandırdı?
Artık kimse TypeScript kullanımı konusunda tartışmıyor. Yeni frontend projeleri varsayılan olarak bunu kullanıyor. Tartışma bitti. TypeScript kazandı.
Kazanmak işin sıkıcı kısmı. Asıl değer, tiplerin iş akışınız için yaptıklarında yatıyor. Bu, sadece yazım hatalarını yakalamaktan çok daha fazlası.
Bir fonksiyon imzası dokümantasyon görevi görür. Asla eskimez. Kod değişirse, derleyici derleme işlemini anında durdurur.
Bir hatırlatıcı planlayan fonksiyona bakın. Tek bir yorum bile okumadan neye ihtiyaç duyduğunu ve ne döndürdüğünü bilirsiniz. İletişim kanalı için tam seçenekleri görürsünüz. Yeni bir kanal eklerseniz, derleyici kodunuzu güncellemeniz gereken her yeri size söyler. Bir yorum ise öylece durur ve yanlış hale gelir.
Refactoring güvenli hale gelir. Tiplendirilmemiş kodda bir alanın adını değiştirmek korkutucudur. String'leri ararsınız ve en iyisini umarsınız. TypeScript'te ise tipi değiştirirsiniz. Derleyici, bozulan her şeyin bir listesini size sunar. Refactoring riskli olmaktan çıkar; güvenli bir görev haline gelir.
Tipler aynı zamanda yapay zekayı kullanmanıza da yardımcı olur.
Bir yapay zekadan tiplendirilmemiş JavaScript'i düzenlemesini istediğinizde, nesne yapısını tahmin etmeye çalışır. TypeScript kullandığınızda ise tip, bir spesifikasyondur. Yapay zeka neyin izinli olduğunu tam olarak bilir. Hatalar, üretim ortamında çökmeler yerine derleme hataları olarak görünür. Tipler, üretilen kodu uyumlu bir koda dönüştürür.
İnsanlar eskiden tiplerin sizi yavaşlattığını söylerdi. Bir yapay zeka iş akışında ise tipler sizi hızlandırır. Koruyucu bariyerler görevi görürler. Her satırı elle kontrol etmek yerine, üretilen kodu güvenle kabul edebilirsiniz.
Bu kurallarla daha iyi tipler yazın:
- Birden fazla boolean yerine union tiplerini kullanın. "loading" | "error" | "ready" gibi bir durum, üç ayrı bayraktan (flag) daha iyidir.
- Domain tiplerinize isim verin. Düz bir sayı yerine
Centsgibi bir tip kullanmak niyetinizi gösterir. anykullanımından kaçının.unknownkullanın ve tipi daraltın.anyanahtar kelimesi güvenlik ağınızı yok eder.- Çıkarım (inference) mekanizmasının çalışmasına izin verin. Her şeyi manuel olarak tiplendirmeyin. Sınırlarınızı belirtin ve gerisini akışına bırakın.
TypeScript, kod tabanlarını açık sözleşmelere dönüştürdü. Bu sözleşmeler, korkusuzca refactoring yapılmasına ve güvenilir yapay zeka desteğine olanak tanır.
Tipleri hataları durdurmak için kullanmaya başladık. Onları kullanmaya devam ediyoruz çünkü her şeyin temeli onlar.
Kaynak: https://dev.to/parsajiravand/typescript-won-heres-what-that-actually-bought-us-53lo
İsteğe bağlı öğrenme topluluğu: https://t.me/GyaanSetuAi
