Generics in TypeScript: Kodo pakartotinis naudojimas ir padidintas kodo lankstumas

generics In koncepcija TypeScript yra galinga funkcija, kuri padidina kodo lankstumą ir skatina pakartotinį kodo naudojimą. Generics leidžia mums apibrėžti lanksčius type-agnostic duomenų tipus metoduose, klasėse ir sąsajose. Tai leidžia mums rašyti metodus ir klases, kurios gali dirbti su kelių tipų duomenimis.

generics Tarp privalumų TypeScript yra:

 

Kodo pakartotinis naudojimas

Generics leidžia mums vieną kartą parašyti kodą ir pakartotinai naudoti jį skirtingiems duomenų tipams. Užuot rašę kelis panašius metodus ar klases kiekvienam konkrečiam duomenų tipui, galime naudoti generics kurdami bendrą kodą, kurį galima pakartotinai naudoti keliems duomenų tipams.

 

Statinis tipo tikrinimas

Generics leidžia TypeScript atlikti statinį tipo tikrinimą, užtikrinant tikslumą ir užkertant kelią klaidoms naudojant neteisingus duomenų tipus. Tai padeda mums greitai nustatyti ir saugiai ištaisyti klaidas.

 

Padidintas kodo lankstumas

Generics išplėsti metodų, klasių ir sąsajų galimybes dirbti su įvairių tipų duomenimis. Galime sukurti lankstesnes ir įvairesnes duomenų struktūras, kurių neriboja konkretus duomenų tipas.

Pavyzdys:

function reverse<T>(array: T[]): T[] {  
  return array.reverse();  
}  
  
const numbers = [1, 2, 3, 4, 5];  
const reversedNumbers = reverse(numbers);  
console.log(reversedNumbers); // Output: [5, 4, 3, 2, 1]  
  
const strings = ["apple", "banana", "orange"];  
const reversedStrings = reverse(strings);  
console.log(reversedStrings); // Output: ["orange", "banana", "apple"]  

Aukščiau pateiktame pavyzdyje rašome generics funkciją reverse, kuri gali veikti su bet kokio tipo duomenų masyvu. Šią funkciją galime pakartotinai naudoti tiek skaičių masyvams, tiek eilučių masyvams, tuo pačiu išlaikydami statinį tipo tikrinimą.

 

generics Apibendrinant galima pasakyti, kad in koncepcija TypeScript padidina kodo lankstumą ir leidžia pakartotinai naudoti kodą. Tai leidžia mums parašyti bendrąjį kodą, kuris gali dirbti su kelių tipų duomenimis, skatinant lankstumą, tipo saugumą ir kodo efektyvumą.