JSX’den TSX’e Geçiş: Kişisel Bir Deneyim
Poyraz Avsever · 2026-02-18 · 8 min read
JavaScript'ten TypeScript'e geçiş, özellikle React projelerinde kod kalitesini gözle görülür şekilde artırıyor...
JavaScript'ten TypeScript'e geçiş, özellikle React projelerinde kod kalitesini gözle görülür şekilde artırıyor. Bu yazıda JSX'ten TSX'e geçişte yaşadığım deneyimi, zorlukları ve kazançları paylaşıyorum.
Neden TypeScript?
Geçiş kararının temel nedeni daha güvenli ve öngörülebilir kod yazabilmekti. Dinamik tip yapısı bazı durumlarda hızlı başlatma sağlasa da, proje büyüdükçe hata ayıklama maliyetini artırabiliyor.
Geçiş Sürecinde İzlediğim Yol
- Temel
propsvestatetiplerini netleştirdim. - Bileşenleri tek seferde değil, kademeli şekilde TSX'e taşıdım.
- Hata mesajlarını rehber gibi kullanıp tip sistemini adım adım oturttum.
JSX ve TSX Karşılaştırması
JSX Örneği
1import React from "react"; 2 3const Greeting = ({ name }) => { 4 return <h1>Hello, {name}!</h1>; 5}; 6 7export default Greeting;
TSX Örneği
1import React from "react"; 2 3interface GreetingProps { 4 name: string; 5} 6 7const Greeting: React.FC<GreetingProps> = ({ name }) => { 8 return <h1>Hello, {name}!</h1>; 9}; 10 11export default Greeting;
Farklar
Tip Kontrolü
- JSX: Yerleşik tip güvenliği yoktur.
- TSX:
propsvestateaçıkça tiplenebilir.
Geliştirici Deneyimi
- JSX: IDE desteği daha sınırlı olabilir.
- TSX: Otomatik tamamlama ve erken hata yakalama daha güçlüdür.
Kod Güvenliği
- JSX: Runtime'da hata görme ihtimali daha yüksektir.
- TSX: Hataların önemli kısmı derleme aşamasında yakalanır.
Karşılaştığım Zorluklar
- Eski JavaScript kodunu tip sistemine uyarlamak zaman aldı.
- Bazı bağımlılıklarda ek tip tanımları gerekebildi.
- Başlangıçta tip kuralları yavaşlatıyor gibi görünse de, orta vadede geliştirme hızını artırdı.
Elde Ettiğim Kazanımlar
- Daha güvenli kod tabanı
- Daha güçlü IDE desteği
- Daha kolay bakım ve refactor
Sonuç
JSX'ten TSX'e geçiş ilk etapta zahmetli görünse de, uzun vadede proje kalitesini artıran önemli bir yatırım. Özellikle ekipli geliştirmede TypeScript, ortak bir kalite standardı oluşturuyor.