Typescript vs Javascript – A különbség megértése

Az egyik gyakran feltett kérdés, amit kapok, az, hogy mi a különbség a JavaScript és a Typescript között?

Találjuk ki…

Attól kezdve, hogy elkezdte a kódolást, a JavaScript (JS) az összes front-end projekt része lett volna. Ha egy kicsit ismeri a JS-t, gondoljon a TypeScriptre JS-ként, valamint néhány további funkcióra, amelyek szebbé és gépelhetőbbé teszik az alkalmazást. A typeScript-et a Microsoft nyílt forráskódú projektként fejlesztette ki, hogy hatékonyabbá tegye a JS-fejlesztést, és korán felismerje a fordítási hibákat.

Ebben a cikkben a JavaScript és a TypeScript néhány fontos funkcióját, valamint a két szkriptnyelv közötti különbségeket tárgyaljuk.

Mi az a JavaScript?

A JavaScriptet kliensoldali szkriptekhez használják. Létrehozhat egy szkriptet egy HTML-oldalon, vagy létrehozhat egy fájlt .js kiterjesztéssel, és beillesztheti a HTML-fájlba. Egy gyakori valós példa, ahol láthatja a JavaScriptet, a bejelentkezési oldal ellenőrzése, ahol hibaüzenet jelenik meg, ha a felhasználónév/jelszó helytelen.

Írjunk egy egyszerű JS kódot, és futtassuk a böngészőben:

Hozzon létre egy example.html fájlt, és adja hozzá a következő kódot:

<script>

feeling = 'happy';

feeling = 23;

</script>

Ez az egyszerű kód deklarál egy változót, és hozzárendeli a happy (karakterlánc) értéket. Ugyanahhoz a változóhoz más típusú (szám) értéket is rendelhetünk. A JavaScript nem panaszkodna rá, és a kódot bármilyen böngészőn probléma nélkül futtathatjuk. Most nézzük meg a felhasználó érzésének értékét:

  Az alkalmazás időkorlátjának beállítása iPhone és iPad készüléken

A HTML-ünk így fog kinézni:

<input type = "textbox" id = "howyoufeel">

és a forgatókönyv ez lesz:

feeling = document.getElementById("howyoufeel").value;

Hacsak nem teszünk kifejezett ellenőrzéseket a szkriptben, a JS bármilyen értéket elfogad a felhasználótól, és továbbadja azt. Tehát az érzés változóba bármit beletehet, például 234, @.#$%, stb.

A JavaScript jellemzői

A fentiek alapján a JavaScript alábbi tulajdonságait figyelhetjük meg:

  • Gyengén gépelt szkriptnyelv
  • Kliensoldali és szerveroldali (node.js-szel) szkriptekhez használatos
  • Rugalmas és dinamikus
  • Minden nagyobb böngésző támogatja
  • Könnyű és értelmezhető

Ha érdekli a JavaScript elsajátítása, akkor nézze meg ezt Udemy tanfolyam.

Mi az a TypeScript?

Egy valós alkalmazás számos érvényesítéssel és dinamikus ellenőrzéssel rendelkezik. Az ilyen alkalmazásoknál a JavaScript kódot egy bizonyos ponton nehéz lesz tesztelni, főleg azért, mert nincs típusellenőrzés. Miközben értékeket kapunk a felhasználóktól, fontos, hogy azokat már az elején megszerezzük. Itt lép be a TypeScript.

A TypeScript erősen begépelt, és van egy fordítója, amely panaszkodik, ha nem határozza meg a változó típusát.

A JavaScript és a TypeScript egyaránt megfelel a szkriptnyelvekre vonatkozó ECMAScript-specifikációknak. A Typescript képes futtatni az összes JavaScript kódot, és támogatja az összes könyvtárát – ezért hívják a JavaScript szuperkészletének.

TypeScript telepítés

A korábbi kódunk TypeScriptben való futtatásához telepítenünk kell a TypeScript fordítót az npm csomag használatával (ha van node js).

npm install -g typescript

vagy töltse le közvetlenül a hivatalos oldalról Microsoft letöltési oldal. Használhatja a TS játszótér hogy megnézze, hogyan fordítják le a kódot ts-ről js-re.

  Az Epic Games-fiók leválasztása

Ha ez megtörtént, konfigurálhatja a projektbeállításokat a tsconfig.json fájlban, és bármilyen IDE-vel vagy szövegszerkesztővel TypeScript-kódot írhat, és elmentheti .ts-ként.

Továbbra is megúszhatja, ha nem határozza meg a változó típusát, és a TypeScript képes következtetni az adattípusra. Azonban ‘feeling’ hibaüzenetet kapunk, ha az elsőként használt típuson (esetünkben egy Stringen) kívül mást adunk meg – maga a fordítás során.

A karbantarthatóság és a könnyű használat érdekében mindig ügyes, hogy a kódnak legyen típusjegyzete:

var feeling: string = “happy”;

Ez nem az!

A TypeScript számos egyéb funkciót is kínál, amelyek megkönnyítik a fejlesztők életét.

A TypeScript jellemzői

A Typescript gazdag funkciókészlettel rendelkezik, és minden kiadás új funkciókat tartalmaz, amelyek megkönnyítik a fejlesztést, mint korábban. Például az új kiadással (4.0) néhány további funkció variadic tuple típusok, egyedi JSX gyárak, osztálytulajdonság-következtetés a konstruktorokból stb. A TypeScript néhány jellemző funkciója a következő:

  • Támogatja az objektum-orientált programozási koncepciókat, mint az interfész, az öröklés, az osztály. generikumok
  • A hibák korai felismerése
  • IDE támogatás szintaktikai ellenőrzéssel és javaslatokkal
  • Könnyebb a hibakeresés a gépelés közben
  • Átfordítja JavaScript-be
  • Szerveroldali és kliensoldali alkalmazásokhoz egyaránt használható
  • Platformok és böngészők közötti támogatás
  • Támogatja az összes JS könyvtárat és bővítményt

Miért van szükségünk TypeScriptre? (A TypeScript előnyei a JavaScripttel szemben)

A Microsoft két évig fejlesztette és használta a TypeScriptet belső projektjeihez, mielőtt 2012-ben nyilvánosságra hozta. Azért készítettek el egy gépelt JavaScriptet, mert így könnyebb volt tesztelni a kódot az éles szintű vállalati alkalmazásokhoz. Továbbra is használhatja a dinamikus gépelési funkciókat, de akkor is beírhatja a változókat, amikor valóban szükséges.

  Csatlakozzon az Apple bétaprogramjához, és ismerje meg a Mavericks Builds-t

Vegye figyelembe az alábbi kódot:

var mynum  = //get from user;

addten(number){

return number + 10;

}

Azt várnánk, hogy az eredmény mindig egy szám legyen. De mi van akkor, ha a felhasználó „birkákat” ad? A kimenet sheep10 lesz – ideális esetben közölnünk kell a felhasználóval, hogy ez a művelet nem lehetséges!

Ezenkívül, ha rendelkezésre állnak a típusinformációk, a szövegszerkesztők és az IDE-k könnyebben használhatók és menthetők a futásidejű hibák. Könnyebb a kód egy későbbi időpontban történő újraalkotása is.

Ez azt jelenti, hogy nincs szükségünk JavaScriptre? (A TypeScript hátrányai a JavaScripthez képest)

A TypeScript a JavaScript kiterjesztéseként is elképzelhető, de semmiképpen sem helyettesítője.

Kisebb kódrészletek esetén a TypeScript többletköltséggé válhat – a telepítés, fordítás és átfordítás felesleges lesz. A JavaScript használatával egyszerűen beírhatja a szkriptet HTML-ben, és működni fog. A kód hibakeresése is egyszerűbb, ha egyszerűen frissítheti a böngészőt minden alkalommal, amikor valamit módosít.

Fej-fej összehasonlítás

Most, hogy megértettük a TypeScript és a JavaScript jellemzőit és előnyeit, nézzünk meg további összehasonlításokat:

Gépelt
JavaScript
Gépelt nyelv, amely korán felismeri a fordítási hibákat
A hibákat futás közben találhatja meg
Alkalmas nagy projektekhez, mivel javítja a kód karbantarthatóságát és olvashatóságát
Ahogy több kód kerül hozzáadásra, nehezebbé válik a tesztelés és a hibakeresés, így a JS alkalmas kis projektekhez
A JS szuperkészlete, azaz olyan szolgáltatások, mint az objektumorientáció, a típusellenőrzés és egyebek
Egy szkriptnyelv, amely támogatja a dinamikus webtartalom létrehozását
Fordító telepítést és konfigurációs beállítást igényel
Nincs szükség telepítésre; A JS kód közvetlenül a böngészőben írható a címkékbe, elmented HTML-ként – látni fogod az eredményt! Ezután építhet rá dinamikusabb tartalom létrehozására.

Továbbá, amikor egy nagyszabású alkalmazáson dolgozik, a JavaScript ismerete megkönnyíti a TypeScriptre való átállást.

Azonban karrier és fizetés szempontjából, mint a TypeScript fejlesztő, rugalmasabb és kényelmesebb lesz mind a JS-, mind a TS-projektekkel – tehát határozottan jobb eszköz a piacon. A TypeScript-fejlesztők általában 110 000 és 147 000 dollár közötti fizetést kapnak, míg a JS fejlesztők körülbelül 63 000 és 118 000 dollár közötti fizetést kapnak évente.