Ana içeriğe atla

TypeScript 1.1 Sürüm Yenilikleri

TypeScript ilk duyurulduktan ve kullanıma sunulduktan sonraki ilk release versiyonudur. Bu versiyon genel olarak TypeScript performansının artırılması için yoğunlaşmış ve aynı zamanda daha iyi modül yapısı kurmaya imkan sağlamıştır. Modül yapısı diğer Microsoft tarafından piyasaya sürülen diğer programlama dillerinde var olan namespace yapısının TypeScript uygulamalarında bir tezahürüdür diyebiliriz.
Kısa anlatımdan sonra sürümler ilgili olan iki yeniliği açıklamaya çalışacağım.
1. Performans iyileştirmesi: TypeScript sitesinde yer allan bilgiye esasen de bu sürümle birlikte çalışma süresi 4x seviyesinde artmıştır. Teknik olarak bakıldığında küçük uygulamalar için önemli olmasa da çok büyük uygulamaların derlenme performansında  bu sürümle birlikte artış sağlanmıştır. Aşağıdaki resimde bu performans artışı ile ilgili detaylar yer almaktadır.

Performans artışı ile ilgili araştırmaların yer aldığı doküman ve raporlara buradan ulaşabilirsiniz.

2. Modül yapısındaki değişiklikler(Better Module Visibility Rules):  Bu özellik özellikle Angular projelerinin daha iyi kalıpta tasarlanması için oluşturulmuştur. --declaration bayrağı sağlanmışsa, yalnızca modüllerde türlerin görünürlüğünü kesin olarak engeller.
Örnek kod konuyu daha iyi anlamanızı sağlayacaktır.


module MyControllers {
  interface ZooScope extends ng.IScope {
    animals: Animal[];
  }
  export class ZooController {
    // Used to be an error (cannot expose ZooScope), but now is only
    // an error when trying to generate .d.ts files
    constructor(public $scope: ZooScope) { }
    /* more code */
  }
}

Blog içinde TypeScript  sürümleri ve içerdiği yenilikleri içeren makaleler bulunmaktadır. Bu makaleler sizin için TypeScript özelliklerini keşfetmede de yardımcı olabilir.

Yorumlar

Bu blogdaki popüler yayınlar

TypeScript Veri Tipleri - Number

Number veri tipi TypeScript programlama dilinde tüm sayısal verileri tanımlayabileceğimiz veri türüdür ve kayan noktalı sayılar, ikilik, sekizlik ve on altılık sayı sistemleri ile desteklenmiştir. Tek farkı ise bu veri türlerinin hepsinin tek değişken türünde birleştirilmesidir. Bu özelliği ile de TypeScript bir çok programlama dilinden pozitif anlamda ayrışmaktadır. Aslında bu özelliği ile aynı zamanda JavaScript kökeninden de uzaklaşamamışdır diyebiliriz. Number veri tipini daha detaylı incelemek için örnek bir program yazalım. Yazdığımız kodları TypeScript derleyicisi ile JavaScript kodlarına dönüştürüldüğünde nasıl bir çıktı aldığımızı ve aynı zamanda da bu çıktıyı NodeJS aracılığı ile çalıştırarak nasıl bir çıktı aldığımızı da inceleyelim. Böylece number olarak tanımladığımız değişkenlerin arka tarafta nasıl bir süreçten geçtiğini detaylı incelemiş olacağız. Örnek uygulamamız için kayan noktalı sayı, tam sayı, ikilik, sekizlik ve onaltılık sayı sistemi ile değişken tanımla...

TypeScript ve JavaScript Arasındaki İlişki

TypeScript ile JavaScript arasındaki ilişkiyi tanımlamak için seçilebilecek en iyi tanımlamalardan biri "Typescript JavaScripti extend eden ve program çıktısı yine JavaScript olan nesne yönelimli programlama dilidir." olurdu. İlk cümleden de gördüğünüz gibi TypeScripti tanımlayan bir cümlede 2 defa JavaScript sözünü kullanmak zorunda kaldık. Bu makalemizde de temel hatlarıyla TypeScript ile JavaScript arasındaki ilişkiyi inceleyecek ve iyi bir Typescript geliştiricisi olabilmeniz için ne kadar JavaScript bilmeniz ve ne kadarını kullanmanız gerektiğine değineceğiz. TypeScript ile JavaScript arasındaki ilişkiyi makaleye giriş yaparken verdiğim tanım esasında bir kaç açıdan inceleyeceğiz. Bunlardan birincisi TypeScript'in JavaScripti de kapsayan bir dil olması, ikincisi TypeScript derleyicisi aracılığıyla JavaScript kodlarına dönüşme sürecidir. Makalenin sonuna doğru ise TypeScript içinde JavaScript yazabiliyor olmamız yazmamız gerektiği anlamına gelmediğini detaylarıyl...

TypeScript 1.3 Sürüm Yenilikleri

TypeScript JavaScript programlama dilindeki nesne yönelimli programlama eksikliğini gidermek için Microsoft tarafından geliştirilmiş bir programlama dilidir. Nesne yönelimli programlamada en önemli kavramlardan bir tanesi de Encapsulation kavramıdır ve TypeScript 1.3 Sürümü ile bu mantık daha da kuvvetlendirilmiştir. TypeScript 1.3 Sürümü ile eklenen protected kavramı diğer progrmalama dilleri C++, C# ve Java'daki benzer mantığa sahiptir ve amaç Encapsulation mantığını kuvvetlendirmektir. Bu bloğun amacı TypeScript üzerine yoğunlaşmak olduğu için protected ve Encapsulation konuları üzerinde fazla durmayacağım. Ama TypeScript programlama dilini çok iyi kullanmak istiyorsanız nesne yönelimli programlamaya da hakim olmanız gerekiyor. protected kullanımı ile ilgili örnekle devam edersek kullanımla ilgili kafanızda altyapı oluşacaktır. Diğer programlama dillerinde protected kavramını etkin kullanıyorsanız zaten konuyu hemen anlayacaksınız. Zaten protected gibi bir nesne yöneli...