Razlika između Typescript sučelja i klase

Sučelje definira strukturu iza koje slijedi izvedbena klasa. To je ugovor koji slijedi bilo koji entitet, sučelje sadrži mnoge stvari kao svojstva, događaje i metode, a sve se to naziva članima sučelja. Sučelje sadrži jedinu izjavu ovih članova, te članove će implementirati klasa Deriving tog sučelja. Za deklariranje sučelja koristi se ključna riječ sučelja.

Primjer deklaracije sučelja.

Sintaksa:

sučelje sučelja sučelja

(

)

zaposlenik sučelja (

FIRSTNAME: niz,

Prezime: niz,

sayHello: () => string

)

var kupac: zaposlenik = (

FIRSTNAME:”Tom”,

Prezime:”Hanks”,

sayHello: (): string => (vrati "Bok tamo")

)

console.log ("Objekt kupca")

console.log (customer.firstName)

console.log (customer.lastName)

console.log (customer.sayHello ())

Gornji primjer definira sučelje. Objekt kupca je tipa zaposlenik.

Sada će objekt biti obvezujući za definiranje svih svojstava kako je određeno sučelje.

Pri sastavljanju generirat će se sljedeći JavaScript kod naveden u nastavku.

// Generirano tipkovnicom 1.8.10

var kupac = (firstName: "Tom", lastName: "Hanks",

sayHello: function () (return "Bok tamo"; )

);

console.log ("Objekt kupca");

console.log (customer.firstName);

console.log (customer.lastName);

console.log (customer.sayHello ());

Izlaz gornjeg primjera koda: -

Objekt kupca

mužjak nekih malih životinja

Hanks

bok tamo

Klasa je nacrt za objekt; to je koncept objektno orijentiranog programskog jezika. Razred pruža značajku inkapsulacije OOP-ova. Omotava članove podataka i metode i konstruktore u jedinstveno jedinstvo koje se naziva klasom, na taj način omogućava enkapsulacije. Raniju klasu nije podržao Typescript, a dobila je podršku od ES6 verzije Typescripta. Ključna riječ klase koristi se za stvaranje klasa u Typescriptu.

Sintaksa:-

class class_name (

//napraviti

)

klasa sadrži članove podataka, metode i konstruktor;

Članovi podataka koji se nazivaju i kao polje, oni predstavljaju svojstva Objekta koju stvara klasa

Pravilna kravata je stanje objekta, poput Pen-ove boje, visine, širina će se nazivati ​​svojstvima objekta.

Metode predstavljaju ponašanje objekta kao što je pisanje funkcionalnosti olovke, aparat za kavu može praviti različite vrste kave što se naziva ponašanjem predmeta.

Konstruktori se koriste za generiranje objekta za definiranu klasu, tako da se može koristiti kao tražena mjesta.it je također odgovoran za inicijalizaciju polja klase.

Sva se trojica nazivaju članom klase koja je klasa inkapsulirana u jednu cjelinu.

Razmislite o zaposlenom razredu u tipkanju.

zaposlenik klase (

)

Pri sastavljanju, generirat će se sljedeći JavaScript kod.

// Generirano tipkovnicom 1.8.10

var Employee = (funkcija () (

funkcija Employee () (

)

zaposlenik za povratak;

) ());

Primjer: Deklariranje klase

klasa CarDemo (

// deklaracija polja

Motor: string;

// deklaracija konstruktora

konstruktor (motor: string) (

this.engine = motor

)

// deklaracija funkcije

show (): void (

console.log ("Motor je:" + ovo.vrsta)

)

)

U gornjem primjeru ime klase je CarDemo, a ako motor imena polja ima konstruktor koji inicijalizira motor naziva polja, ova ključna riječ odnosi se na trenutnu instancu klase, i to je razlog zašto. engine = zapisan motor s jednim nazivom metode - pokazati koja pokazuje vrijednost polja koje je konstruktor inicializirao.

Kompiliranjem gornjeg koda, generirat će se sljedeći JavaScript kod.

// Generirano tipkovnicom 1.8.10

var CarDemo = (funkcija () (

funkcija CarDemo (motor) (

this.engine = motor;

)

CarDemo.prototype.show = funkcija () (

console.log ("Motor je:" + ovo.vrsta);

);

povratak CarDemo;

) ());

Izrada instančnih predmeta više klase

Za izradu instancije klase koristi se nova ključna riječ, a slijedi naziv klase. Sintaksa za isto data je u nastavku -

Sintaksa

var object_name = novo ime klase ((argumenti))

Nova ključna riječ odgovorna je za pronalazak.

Desna strana izraza poziva na konstruktor. Konstruktoru trebaju biti proslijeđene vrijednosti ako je parametrizirano.

/ stvaranje objekta

var obj = novi CarDemo ("XXSY1");

// pristupiti polju

console.log ("Čitanje vrijednosti atributa Engine as:" + obj.engine);

// pristupiti funkciji

obj.show ();

Izlaz gornjeg koda je kako slijedi -

Vrijednost atributa čitanja Engine kao XXSY1

Funkcijski prikazi Motor je: XXSY1

Usporedba između tipa sučelja Typescript vs klase

Ispod je gornja 4 razlike između Typescript sučelja i klase

Ključne razlike između sučelja Typescript vs klase

Oba sučelja Typescript vs klasa popularni su izbor na tržištu; neka nam govori o nekim glavnim razlikama između Typescript sučelja i klase:

  1. Sučelje definira strukturirano za izvedene klase tog sučelja. sučelje sadrži samo izjavu funkcija članova.
  2. Klasa je odgovorna za implementaciju strukture sučelja davanjem tijelu funkcije sučelja. Ona omogućuje enkapsulaciju zamotavanjem članova podataka, funkcionira u okvir koji se naziva klasom na taj način pruža mogućnost enkapsulacije OPP-ova.
  3. Ključna riječ sučelja koristi se za izradu sučelja koje sadrži članove podataka, funkcije.
  4. Ključna riječ klase koristi se za stvaranje klase koja sadrži članove podataka, funkcije, konstruktore.
  5. Sučelje potpuno uklonjeno tijekom sastavljanja koda. Dok se klasa ne uklanja tijekom sastavljanja koda.
  6. Jedno sučelje može proširiti drugo sučelje proširivanjem ključne riječi na ovaj način sučelje pruža nasljeđivanje. Sučelje ne proširuje klasu, već definira strukturu klase. Sučelje podržava više nasljeđivanja širenjem više sučelja zajedno.
  7. Klasa provodi sučelje implementira ključnu riječ, klasa može proširiti i drugu klasu upotrebom ključne riječi extens i na taj način dječja klasa može koristiti roditeljsku klasu. Ova se značajka naziva nasljeđivanje, klasa ne podržava više nasljeđivanja jer u jednom trenutku samo klasa implementira jedno sučelje. moguće je s sučeljem.

Usporedba sučelja Typescript vs klase

Pogledajmo detaljan opis sučelja Typescript vs klase

Osnove usporedbe sučelja Typescript vs klase Sučelje klasa
definicijaSučelje definira strukturu nakon čega slijedi izvedbena klasa.Omotava članove podataka i metode i konstruktore u jedinstveno jedinstvo koje se naziva klasa.
upotrebaZa stvaranje strukture za entitet.Izrada objekta, Inkapsulacija za polja, metoda
Upotreba u stvarnom vremenuUzorak dizajna, struktura projektaProvodi definirane arhitekture
Ključna riječ stvaranjaza izradu sučelja koristi se ključna riječ sučelja.klasa ključna riječ koristi se za stvaranje klase.

Zaključak - sučelje Typescript vs klase

Sučelje Typescript vs klase imaju različitu svrhu u području razvoja softvera. Sučelje daje strukturalni građevni blok klase, dok se ta struktura provodi pomoću klase kroz koju je objekt klase kreiran.

Pomoću sučelja ćemo razviti osnovnu strukturu softvera koju će u budućnosti razviti programer, a Class implementira sučelje pružajući tijelo metode sučelja. Izrada sučelja je jednostavna u početnoj fazi razvoja softvera kada zahtjev nije jasan jer pruža fleksibilnost za promjenu, jer će ga provoditi klasa.

Preporučeni članak

Ovo je vodič za glavne razlike između Typescript sučelja prema klasi. Ovdje također raspravljamo o sučelju Typescript u odnosu na ključne klase s infografikom i tablicom usporedbe. Također možete pogledati sljedeće članke -

  1. Razlike tipa TypeScript i sučelje
  2. CoffeeScript vs TypeScript
  3. JavaScript vs TypeScript
  4. TypeScript vs protok koji je korisniji

Kategorija: