- Published
TypeScript Notlarım
- Yazar
- İsim
- Elif Nur Karakoç
TypeScript Nedir?
Statik tür tanımları ekleyerek Javascript'i temel alan bir dildir.
Neden Ortaya Çıktı?
Nesne tabanlı dillerin tip kontrolü Javascript'te bulunmuyor, TypeScript ile tip kontrolünü ve hata kontrolünü kullanıyoruz.
Static Typing & Dynamic Typing
Static Typing'de değişkenleri kullanmadan önce veri tiplerinin tanımlarını belirtmek zorundayız. Compile time hataları verir. Örnek: Typescript,Java
Dynamic Typing'de değişkenleri kullanmadan önce tip tanımlamıyoruz, tip zorunluluğu olmamasından dolayı geliştiriciye esnek bir ortam sağlar. Runtime da hataları görürüz. Örnek: JavaScript
TypeScript ile gelen özellikler ve avantajlar
- Erken tespit edilen hatalar
- Predictability (Tahmin Edilebilirlik):Programın içindeki her tanımın tipinin belirli olması.
- OOP (Class,Interface...)
- More Types
- Browser Compatability(Tarayıcı Uyumluluğu) ES7 ES6
TypeScript Özellikleri
- Geçerli bir Javascript kodu aynı zamanda Typescript kodudur. (.js uzantısını .ts uzantısına çevirmeniz yeterli olacaktır.)
- TypeScript her yerde kullanılabilir. (Browser, mobil cihazla,herhangi bir işletim sistemi.)
- TypeScript Javascript kütüphaneleri ile birlikte kullanılabilir. (Geliştiricileri varolan Javascript kodunu değiştirmeden kullanabilirler.)
- Hata mesajlarını development zamanında verir. (Static typing özelliği sayesinde daha geliştirme aşamasındayken hataları yakalayabilirsiniz.)
TypeScript'in dezavantajı
- Tarayıcılar Typescript kodunu anlayamazlar. Bu yüzden Typescript kodu bir derleyici yardımı ile Javascript koduna derlenir.
TypeScript file (.ts) --> TypeScript Compiler (tsc)(target:ES3/ES5/ES6) --> Javascript file(.js) (Vanilla JS Code)
Typescript'i ne zaman kullanmalıyım?
- Büyük bir kod tabanınız olduğunda
- Takım arkadaşlarınız statik yazım dillerine alışkınsa
- Bir kütüphane veya framework TypeScript önerdiğinde
Kullanmak için gerekli olanlar
- Nodejs
- Npm
npm i -g typescript
tsc main.ts
tsc main.ts -w
- tsc: typescript compiler .ts => .js
- tsc,ts uzantılı dosyaları js uzantısına çevirir.
npm create-react-app joker --template typescript
--template ile tsconfig.json dosyası oluşuyor.
npm install @types/styled-components styled-components
Typescriptte kullanabilmek için her bir paketin tipleri oluyor.
TypeScript ile yazdığım proje linki: https://github.com/elifnurkarakoc/patika-todoapp-typescript