Published

TypeScript Notlarım

Yazar
  • avatar
    İ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