19 348
Tesztek Android Google Apple Microsoft Samsung Huawei Nokia Linux Biztonság Tudomány Facebook Videojáték Film
ga
https://lh3.googleusercontent.com/-IyhYFAA4F2o/UGqe-rf-JiI/AAAAAAAAKA8/isgQQoHo8Bw/s800/5732.image8.png

TypeScript ‑ A Microsoft válasza a Google Dart‑ra

2012.10.02. 10.35
A Microsoft tegnap jelentette be TypeScript nevű új programozási nyelvét, ami tulajdonképpen a JavaScript továbbgondolása, így a Google Dart nyelvének egy lehetséges alternatívája.

A Microsoft TypeScript-je tulajdonképpen a JavaScript kiterjesztése olyan lehetőségekkel, mint modulok létrehozása, osztályok definiálása, öröklés, típusellenőrzés és még sok más olyan képesség, ami a JavaScriptből eddig hiányzott. Noha a JavaScript napjainkra az egyik leginkább elterjedt programozási nyelv (a GitHub statisztikáit a JavaScript vezeti), és mostanra szinte bármi megvalósítható JavaScript segítségével, maga a nyelv nagyon lassan fejlődik. Jó példa erre, hogy a JavaScirptben nincs lehetőség "klasszikus" objektum orientált kód írására, és a JavaScript következő verziójának ajánlásában már szerepel a class kulcsszó, de például öröklődés már nincs, opcionális típus ellenőrzés támogatása pedig nem is várható. Azt lehet mondani, hogy a jelenlegi komplex JavaScript alkalmazások már jócskán túlhaladták a JavaScript mint nyelv kereteit. Kellő modularitás, és strukturált felépítés hiányában ezek a kódok nagyon nehezen karbantarthatóak, vagy átláthatóak. Ezek az igények hívták életre a Google Dart nyelvét, és a TypeScriptet is. Ha hirtelen, egy mondatban össze kellene foglalni, akkor valahogy úgy fogalmazhatnánk, hogy a TypeScript úgy viszonyul a Dart-hoz, mint a C# a Java-hoz. Ugyanazt a területet célozzák meg, de kicsit eltérő filozófiával.

A Dart fejlesztésekor a Google úgy gondolta, hogy teljesen szakít a JavaScript-el, és egy alapjaiban új nyelvet fog kialakítani, az elkészült kódot pedig saját virtuális gép futtatja majd. Az, hogy a Dart JavaScript-re fordítható, tulajdonképpen kényszermegoldás, mivel nem várható, hogy minden böngésző beépítve tartalmazza a Dart virtuális gépet. Ez rá is nyomja bélyegét a nyelvre, mivel így a Dart-kód csak mindenféle kerülőutakon tud kommunikálni a JavaScript-el, mivel a koncepció szerint elkülönül a két futtatókörnyezet, még akkor is, ha Dart-ból JavaScript-et fordítunk, és így igazából csak két JavaScript betétnek kell kommunikálnia. Ezzel nehézkessé válik ugyan a jól bevált JavaScript könyvtárak alkalmazása, viszont a natív Dart VM miatt jobb a futtatott kód sebessége, és elérhető néhány olyan képesség (párhuzamos szálak, processzek kezelése, stb.), ami JavaScriptben nem.


A TypeScript ezzel szemben nem ugrik ekkorát, mindössze a JavaScript meglévő eszközkészletét egészíti ki új lehetőségekkel. Nem is tartozik hozzá saját virtuális gép, az elkészült kódot minden esetben JavaScript-re fordítja le. Ennek megfelelően egy meglévő JavaScript kód egyben TypeScript kód, és minden TypeScript kód fordítás után JavaScript lesz. Így például egy TypeScript objektum metódusait ugyanolyan egyszerűen hívhatjuk meg JavaScriptből, mint ha az eleve JavaScript-ben íródott volna. És persze ugyanígy használható is minden meglévő JavaScript eszköz a TypeScript kódunkból. Ez az a tulajdonság, ami szerintem a TypeScriptet igazán erőssé teszi, hogy nem kell lemondanunk a már meglévő JavaScript kódok (pl. jQuery, AngularJS, template rendszerek, stb.) használatáról, amivel Dart-nál számolni kell.

A TypeScript egyébként teljesen nyílt forráskódú, Apache 2.0 licenc alatt fut, hasonlóan a Dart-hoz, ami annyit jelent, hogy bárki felhasználhatja akár nyílt, akár zárt forrású projektekben, és szabadon módosíthatja. Tehát a Microsoft semmilyen szempontból nem "ült rá" a nyelvre, teljesen nyitott az út bárki számára, bármilyen fejlesztést illetően.

Kingsman: The Golden Circle trailer
Karmen – Már bárki készíthet saját zsarolóvírust
A Unity után a Mozilla Thunderbirdöt is elengedné az Ubuntu
Rendszerfrissítésnek álcázzák az androidos kártevőket
Felkapott témák
Így fog kinézni az iPhone X
Ezek most a legjobb antivírusok Androidra
Xiaomi Mi MIX 2 – Itt a jövő okostelefonja
Százmilliókat keresett egy tizenéves hacker
A Samsung Galaxy S8 és az LG G6 keveréke lesz az új iPhone
Több ezren váltanának GNOME helyett KDE-re az Ubuntuban
Állásajánlatok
Security Management Specialista Budapest
Minőségbiztosítási vezető Referenciaszám: PJ5266
Software Development Engineer R&D field JGM-7628
Fixed IT Architect - 000000176871
Alkalmazásfejlesztő, alkalmazásgazda
Junior Compliance Data Analyst
Minőségbiztosítási mérnök