A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben észleli, nem pedig futás közben.

A TypeScript egyik kulcsfontosságú jellemzője az egyéni adattípusok típusok és interfészek segítségével történő meghatározása. Azonban nehéz lehet tudni, mikor kell használni mindegyiket.

Ebben a cikkben megvitatjuk a TypeScript típusai és interfészei közötti különbséget, valamint azt, hogy mikor érdemes mindegyiket használni.

Mik azok a típusok és interfészek a TypeScriptben?

A TypeScript két legfontosabb fogalma a típusok és az interfészek. Lehetővé teszik az adatok alakjának meghatározását, ami segíthet robusztusabb és karbantarthatóbb kód írásában.

A Típusok egy érték alakjának meghatározására szolgál. Használhatók egyszerű típusok, például számok és karakterláncok, vagy összetett típusok, például objektumok és tömbök meghatározására.

Az Interfészek segítségével meghatározható a szerződés, amelyet az objektumnak be kell tartania. Segítségükkel meghatározhatók azok a tulajdonságok és metódusok, amelyekkel egy objektumnak rendelkeznie kell.

Mikor kell használni a típusokat 💡

1. Ha több típusú uniót vagy kereszteződést kell létrehoznia.

Például megadhat egy Animal nevű típust, amely a Dog és Cat típusok uniója.

2. Ha álnevet szeretne létrehozni egy összetett típushoz.

Ez olvashatóbbá és karbantarthatóbbá teheti a kódot.

Például megadhat egy Product nevű típust, amely a { name: string, price: number } típus álneve.

3. Ha olyan forgatókönyvekkel foglalkozik, amelyek a projektben a típusok újrafelhasználását igénylik.

Ez segíthet abban, hogy a kód konzisztens és hibamentes legyen.

Például megadhat egy User nevű típust, amelyet az egész projektben használnak az alkalmazás felhasználóinak ábrázolására.

Mikor használjunk interfészt💡

1. Ha meg szeretné adni azt a struktúrát, amelyhez egy objektumnak ragaszkodnia kell.

Ez hasznos lehet annak biztosítására, hogy az objektumokat a kódban következetesen használják.

Például megadhat egy Shape nevű interfészt, amely előírja, hogy egy objektum rendelkezzen name tulajdonsággal és area() metódussal.

2. Ha ki kell terjesztenie egy objektum alakzatot vagy osztályt annak biztosítására, hogy az megfeleljen a szerződésnek.

Például Amikor létrehoz egy Square nevű osztályt, amely megvalósítja a fent létrehozott Shape felületet. Ezután a Shape interfész előírja, hogy az osztály rendelkezzen egy name tulajdonsággal és egy area() metódussal.

A fenti példában az alábbi hibát kapjuk fordításkor:

A probléma megoldásához frissítenünk kell az osztályt a következőképpen:

3. Ha egy objektum alakját határozza meg, amelyet több osztály vagy függvény is használ.

Ez segíthet abban, hogy a kód konzisztens és hibamentes legyen.

Például megadhat egy Product nevű interfészt, amelyet a projektben több osztály és függvény használ egy termék megjelenítésére.

Következtetés

Általában akkor érdemes típusokat használni, amikor egy érték alakját kell megadni, és interfészeket akkor kell használni, amikor meg kell adni azt a struktúrát, amelyhez egy objektumnak ragaszkodnia kell.

Azonban nincsenek szigorú szabályok, és a legjobb választás az adott helyzettől függ.

Ha megérti a TypeScript típusai és felületei közötti különbséget, robusztusabb és karbantarthatóbb kódokat írhat.

TL;DR

Az egyszerűsítés érdekében íme néhány további tipp a típusok és interfészek TypeScriptben való használatához:

  • Használjon típusokat egyszerű értékekhez, például számokhoz és karakterláncokhoz.
  • Használjon típusokat álnevek létrehozásához összetett típusokhoz.
  • Használjon interfészt összetett értékekhez, például objektumokhoz és tömbökhöz.
  • Interfészek segítségével határozza meg azt a szerződést, amelyet az objektumnak be kell tartania.
  • Használjon típusokat és felületeket a típusok újrafelhasználásához a projektben.

Ha követi ezeket a tippeket, hatékonyabb és karbantarthatóbb TypeScript kódot írhat.

Remélem ez hasznos volt :)

Boldog kódolást!

Stackademic

Köszönjük, hogy a végéig elolvastad. Mielőtt elindulna:

  • Kérjük, fontolja meg az író tapsolását és követését! 👏
  • Kövess minket a "Twitter(X)", "LinkedIn" és "YouTube" oldalon.
  • Látogassa meg a Stackademic.com webhelyet, hogy többet megtudjon arról, hogyan demokratizáljuk az ingyenes programozási oktatást szerte a világon.