Diferența dintre interfața Typescript și clasa

O interfață definește structura care este urmată de clasa derivată. Este un contract urmat de orice entitate, Interfața conține multe lucruri ca proprietăți, și evenimente, metode și toate acestea sunt numite ca membri ai interfeței. O interfață conține singura declarație a acestor membri, acești membri vor fi implementați prin clasa Derivare a interfeței respective. Cuvântul cheie de interfață este utilizat pentru a declara interfața.

Exemplu de declarație de interfață.

Sintaxă:

interfață nume_interfață

(

)

interfață Angajat (

firstName: string,

lastName: string,

sayHello: () => string

)

client var: angajat = (

firstName:“Tom“,

LASTNAME:“Hanks“,

sayHello: (): string => (return "Salut acolo")

)

console.log („Obiectul clientului”)

console.log (customer.firstName)

console.log (customer.lastName)

console.log (customer.sayHello ())

Mai sus, se definește o interfață. Obiectul client este de tipul Angajat.

Acum va fi obligatoriu obiectul să definească toate proprietățile specificate de interfață.

La compilare, va genera următorul cod JavaScript dat mai jos.

// Generat prin scrierea de caractere 1.8.10

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

sayHello: function () (return "Salut acolo"; )

);

console.log („Obiectul clientului”);

console.log (customer.firstName);

console.log (customer.lastName);

console.log (customer.sayHello ());

Rezultatul exemplului de mai sus: -

Obiectul clientului

Tom

Hanks

bună

Clasa este un model pentru un obiect; este conceptul de limbaj de programare orientat pe obiecte. O clasă oferă funcția de încapsulare a OOP-urilor. Înfășoară membrii de date și metodele și constructorii într-o singură unire, care se numește clasa, asigurând astfel încapsulări. O clasă anterioară nu a fost acceptată de Typescript, a primit suport de la o versiune ES6 a Typescript. Cuvântul cheie de clasă este utilizat pentru a crea clase în Typescript.

Sintaxă:-

class class_name (

//a face

)

o clasă conține membri, metode și constructor de date;

Membrii de date, de asemenea, numiți ca câmp, reprezintă proprietăți ale obiectului, care sunt create de o clasă

O legătură corespunzătoare este starea unui obiect, cum ar fi culoarea stiloului, înălțimea, lățimea va fi numită ca proprietăți ale unui obiect.

Metodele reprezintă comportamentul unui obiect, cum ar fi funcționalitatea stiloului de a scrie, mașina de cafea poate face diferite tipuri de cafea aceasta se numește ca un comportament al unui obiect.

Constructorii sunt obișnuiți să genereze un obiect pentru o clasă definită, astfel încât acesta să poată fi utilizat ca locuri necesare.it este responsabil și de inițializarea unui câmp al unei clase.

Acești trei sunt numiți membri ai unei clase care este încapsulată de clasă într-o singură unitate.

Luați în considerare un angajat de clasă în scrierea tipului.

Angajat de clasă (

)

La compilare, va genera următorul cod JavaScript.

// Generat prin scrierea de caractere 1.8.10

var Angajat = (funcție () (

funcție Angajat () (

)

Angajat înapoi;

) ());

Exemplu: declararea unei clase

Clasa CarDemo (

// declarație pe teren

motor: string;

// declarație de constructor

constructor (motor: șir) (

acest.engine = motor

)

// declarația funcției

spectacol (): void (

console.log („Motor este:„ + this.engine)

)

)

În exemplul de mai sus numele clasei este CarDemo, având un motor de nume de câmp având un constructor care inițializează motorul de nume de câmp, acest cuvânt cheie se referă la instanța de clasă curentă, de aceea aceasta. motor = motor scris, având un singur nume de metodă - arată care arată valoarea câmpului inițiată de un constructor.

Compilând codul de mai sus, va genera următorul cod JavaScript.

// Generat prin scrierea de caractere 1.8.10

var CarDemo = (funcție () (

funcție CarDemo (motor) (

this.engine = motor;

)

CarDemo.prototype.show = function () (

console.log („Motor is:” + this.engine);

);

retur CarDemo;

) ());

Crearea obiectelor de instanță din clasa de mai sus

Pentru a crea o instanță a clasei, noul cuvânt cheie folosit urmat de numele clasei. Sintaxa pentru aceeași este dată mai jos -

Sintaxă

var obiect_name = nume de clasă nou ((argumente))

Noul cuvânt cheie este responsabil pentru instantanare.

Partea din dreapta a expresiei invocă constructorul. Constructorul ar trebui să treacă valori dacă este parametrizat.

/ crearea unui obiect

var obj = new CarDemo („XXSY1”);

// accesați câmpul

console.log („Citirea valorii atributului Motor ca:” + obj.engine);

// accesați funcția

obj.show ();

Ieșirea codului de mai sus este următoarea -

Citirea valorii atributului Motor ca XXSY1

Afișele funcționale Motor este: XXSY1

Comparație de la cap la cap între interfața Typescript vs clasă

Mai jos este diferența de top 4 între interfața Typescript și clasa

Diferențe cheie între interfața Typescript și clasa

Atât interfața Typescript vs clasa sunt alegeri populare pe piață; hai să discutăm unele dintre diferențele majore dintre interfața Typescript și clasa:

  1. Interfața definește structurată pentru clasa derivată a interfeței. o interfață conține singura declarație a funcțiilor de membru.
  2. Clasa este responsabilă pentru implementarea structurii interfeței, oferind corpului funcției interfeței, asigură încapsulare prin înfășurarea membrilor de date, funcționează într-o casetă care este numită clasă, în acest fel furnizează caracteristici de încapsulare a OPP-urilor.
  3. Cuvântul cheie de interfață este utilizat pentru a crea o interfață care conține membri de date, funcții.
  4. Cuvântul cheie de clasă este utilizat pentru a crea o clasă care conține membri de date, funcții, constructori.
  5. Interfața complet eliminată în timpul compilării codului. În timp ce clasa nu se elimină în timpul compilării codului.
  6. O interfață poate extinde o altă interfață prin extinderea cuvântului cheie în acest fel interfața oferă moștenire. Interfața nu extinde o clasă, definește o structură pentru clasă. Interfața acceptă moșteniri multiple prin extinderea mai multor interfețe împreună.
  7. Clasa implementează interfața prin implementarea cuvântului cheie, clasa poate extinde o altă clasă, de asemenea, folosind extinde cuvântul cheie, în acest fel, clasa copil poate utiliza clasa părinte, această caracteristică se numește moștenire, clasa nu acceptă moșteniri multiple, deoarece la o dată doar o singură interfață implementată de clasă. este posibil cu o interfață.

Comparație între interfața Typescript și clasa

Să ne uităm la descrierea detaliată a interfeței Typescript vs clasa

Baza de comparație între interfața Typescript și clasa Interfață Clasă
DefinițieO interfață definește o structură care este urmată de clasa derivată.Înfășoară membrii de date și metodele și constructorii într-o singură unire, care se numește clasă.
folosirePentru a crea o structură pentru o entitate.Crearea obiectelor, încapsulare pentru câmpuri, metodă
Utilizare în timp realModel de proiectare, Structura proiectuluiImplementări de arhitecturi definite
Creație cuvinte cheieCuvântul cheie de interfață este utilizat pentru a crea o interfață.cuvântul cheie de clasă este utilizat pentru a crea clasa.

Concluzie - Interfață tipografie vs clasă

Interfata tipografica fata de clasa ambele au un scop diferit in zona de dezvoltare software. Interfața oferă blocul structural de construcție pentru clasă, în timp ce aceste structuri sunt implementate de clasa prin care a creat obiectul clasei.

Vom folosi interfața pentru a dezvolta structura de bază a software-ului care este dezvoltată în viitor de către un dezvoltator, Class implementează interfața oferind un corp al metodei interfeței. Crearea interfeței este ușoară într-o fază inițială de dezvoltare a software-ului atunci când o cerință nu este clară, deoarece oferă flexibilitate pentru schimbare, deoarece va fi implementată de o clasă.

Articol recomandat

Acesta a fost un ghid pentru diferențele de top între interfața Typescript și clasa. Aici vom discuta, de asemenea, despre interfața de tipuri Typescript față de clasa cu infografie și tabelul de comparație. De asemenea, puteți arunca o privire asupra următoarelor articole -

  1. TypeScript Type față de diferențele de interfață
  2. CoffeeScript vs TypeScript
  3. JavaScript vs TypeScript
  4. TypeScript vs Flux Care dintre ele este mai util