Microsoft ma teraz szansę, którą Google zmarnował: TypeScript będzie następcą JavaScriptu?

Microsoft ma teraz szansę, którą Google zmarnował: TypeScript będzie następcą JavaScriptu?

04.10.2012 18:10

Zaprezentowanie w zeszłym roku przez Google nowego języka programowania dla przeglądarek internetowych Dart wywołało spore poruszenie wśród programistów związanych z Webem. Ten wywodzący się ze Smalltalka język był od strony technicznej wyraźnie lepszy od JavaScriptu, a jego maszyna wirtualna była bardzo wydajna. Gdyby jeszcze tylko udało się przekonać innych producentów przeglądarek, że JavaScript jest już passe, a programiści marzą o lepszych językach… Google się nie udało, Dart wciąż jest tylko ciekawostką. Teraz przed podobną szansą na stworzenie następcy JavaScriptu staje Microsoft.

Każdy, kto zaczynał tworzenie stron WWW jeszcze w minionym stuleciu, pamięta pisanie prościutkich skryptów, które np. miały za zadanie wyświetlić przewijający się napis w pasku statusu przeglądarki. Do takich celów JavaScript był świetny, ale czy dziś można o nim powiedzieć to samo? Współczesne aplikacje webowe to często prawdziwe monstra, setki tysięcy linii kodu uruchamianego w przeglądarce, nad którymi zapanować bardzo trudno. Co więcej, często ten kod jest wynikiem działania skrośnych kompilatorów, takich jak Google Web Toolkit, konwertujących kod stworzony np. w Javie do JavaScriptu.

Wśród programistów związanych z Webem od paru lat dawało się więc wyczuć zainteresowanie lepszym językiem skryptowym dla przeglądarek. Sporą popularność zdobył CoffeeScript, będący faktycznie językiem skryptowym wyższego rzędu, którego kod po napisaniu był dopiero „kompilowany” do JavaScriptu. Nic dziwnego — dla każdego, kto przyzwyczaił się do pisania w Javie, Pythonie czy Rubym, z ich bogatymi frameworkami, przejście do pisania w „gołym” JavaScripcie można było porównać z zamianą BMW M3 na poczciwą Syrenkę. Doświadczeni programiści, zmuszeni do pracy nad dużymi aplikacjami dla przeglądarek, potrzebowali więcej.

Obraz

Wspomniany wcześniej Google podszedł do sprawy dość radykalnie — stworzony przez jajogłowych z ogromnym doświadczeniem Dart wywodził się z mało dziś popularnego, a bardzo ważnego dla teorii programowania Smalltalka, pierwszego prawdziwie obiektowego (każda wartość i każda struktura danych są w nim obiektem) i reflektywnego (definiujące język obiekty są opisane w nim samym) języka. Ale choć zmęczonym JavaScriptem programistom przynosił przeciążanie operatorów i wyrażenia lambda, wielkiego poklasku nie zdobył. Reakcje były ambiwalentne, a niektórzy ostrzegali, że prawdziwym celem Google'a jest doprowadzenie do sytuacji, w której powstawać będą aplikacje webowe, które uruchomić można tylko w Chrome.

Czas na Microsoft. Gigant z Redmond pokazał właśnie TypeScript — język postrzegany jako następca JavaScriptu. Stoi za nim Anders Hejlsberg, autor Turbo Pascala, Delphi i C# oraz Steve Lucco, twórca nowego silnika skryptowego Internet Explorera 9. W przeciwieństwie do Google, Microsoft zdecydował się zaoferować programistom coś, co nie będzie wyglądało dziwnie, więc TypeScript jest po prostu nadzbiorem JavaScriptu, obudowanym o takie atrakcje jak statyczne typizacje, łatwe konstruowanie klas i modularyzację — składnia języka jest jednak praktycznie taka sama. A tam, gdzie wymagane są nowe elementy składniowe, Microsoft zadbał o wykorzystanie składni rozważanej dla ECMAScriptu 6, czyli nowej wersji standardowego JavaScriptu.

W porównaniu do Darta, nowy język jest więc w praktyce kompatybilny z JavaScriptem i raczej konserwatywny w swoich zamierzeniach. Mamy ograniczoną inferencję typów, prosty system statycznej typizacji, a co najważniejsze — normalny JavaScript na wyjściu kompilatora TypeScriptu. Tak — te wszystkie nowe konstrukcje języka są przekształcane w łańcuchy prototypów JavaScriptu, nie ma więc mowy o próbie popsucia interoperacyjności Webu, jak to było w wypadku Darta. Aplikacje pisane w TS działałyby na każdej przeglądarce.

Szanse na sukces nowego języka są całkiem spore, wsparcie dla niego zapewni Visual Studio 2012 (wtyczka do VS dostępna jest tutaj), a licencja, na jakiej został wydany, nie powinna nikogo irytować — to liberalne Apache 2.0. Jedynym, co może TypeScriptowi zaszkodzić, jest nazwa firmy, która za nim stoi — nie od dziś wiadomo, że wśród webdeweloperów Microsoft nigdy nie cieszył się tak dobrą opinią, jak wśród twórców aplikacji desktopowych.

Więcej o TypeScripcie znajdziecie w dokumentacji (PDF), możecie też posłuchać ponad 50-minutowej prezentacji twórcy Delphi na MSDN.com.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (30)