Sissejuhatus JavaScripti
JavaScript lühendab ka seda, et JS on kõrgetasemeline tõlgendatav programmeerimiskeel. JavaScript on üks kolmest veebis levinud põhitehnoloogiast. JavaScript võimaldab ehitada interaktiivseid veebilehti, mis pole staatilised. Enamik veebisaite kasutab arenduseks JS-i ja suurematel veebibrauseritel on selle käivitamiseks JavaScripti mootor. JavaScript on kerge, nõrgalt kirjutatud, objektorienteeritud võimalustega prototüüpidel põhinev programmeerimiskeel. Veebirakenduste kliendipoolsel arendamisel kasutatakse JavaScripti, see sisaldub HTML-failis või sellele viidatakse, nii et kood renderdatakse. Tänapäeval ei kasutata JavaScripti mitte ainult kliendipoolsel arendamisel, vaid ka serveripoolsel programmeerimisel. Saadaval on mitmesuguseid raamistikke, mis on üles ehitatud JavaScripti abil nagu Node.js. Node.js-s on palju mooduleid mikroteenuste, API-de ja andmebaaside ühenduste arendamiseks. JavaScripti kliendipoolne mehhanism pakub traditsiooniliste CGI skriptide ees palju eeliseid. JavaScripti saab kasutada tegutsemiseks, mis põhineb kasutaja algatatud sündmustel, näiteks nuppude klõpsamine, navigeerimine, hüpikteated jne. Seda kasutatakse ka kliendi poolt kinnitamiseks. saate enne vormi veebiserverisse saatmist valideerida vormil olevad väljad nagu e-post, parool jne.
Kas JavaScripti objektorienteeritud keel on?
Teema, kas JavaScript on puhas objektorienteeritud keel või mitte, on alati vaieldav. Nüüd hakkame selgeks tegema, et see on Javascripti objektorienteeritud, kuna mõned ütlevad, et see pole objektorienteeritud, kuna sellel pole ühtegi klassi ega suuda rakendada OOP-ide kontseptsioone nagu pärand või kapseldamine ja mõned ütlevad, et see on objektorienteeritud keel. Enne selle JavaScripti objektorienteeritud teema arutamist tuleks aru saada, et mis teeb programmeerimiskeele objektorienteeritud programmeerimiskeeleks?
Objektorienteeritud keeltel on vähe olulisi omadusi:
-
Polümorfism:
Objekti võime esineda mitmel kujul. Näiteks saab funktsiooni üle koormata sama nimega, kuid erinevate parameetritega.
-
Kapseldamine:
Kõigi andmete ja toimingute sidumine ja klassis hoidmine.
-
Pärand:
Lapseklassi saab tuletada vanemklassist koos kõigi vanemateklassi omaduste ja mõne oma omadusega.
Need ülalnimetatud kolm põhimõtet on objektorienteeritud keele alus.
Niisiis, JavaScript ei pruugi järgida objektorienteeritud põhimõtete täpset paradigmat, kuid JavaScripti rakendamiseks on JavaScripti erinevaid viise. Näites mõned näited: kuidas JavaScripti järgida objektorienteeritud põhimõtteid
Kapseldamine:
Kapseldamise mõte on see, et objekti andmetele ei tohiks juurde pääseda otse, vaid sellele tuleks juurde pääseda mõne meetodi abil. Kuid JavaScriptis pole klassi ja objektide kontseptsiooni, mida see rakendaks kapseldamiseks kahel viisil, näiteks funktsiooni ulatuse ja sulgemise teel.
1) Funktsiooni ulatus:
See pole midagi muud kui funktsioonide sees olevate muutujate deklareerimine. Seega piirdub muutujate ulatus ainult funktsioonidega ja muud objektid ei pääse muutujatele juurde. Võtame näite funktsiooni ulatuse demonstreerimiseks.
funktsiooni test ()
(
var väärtus = “Tere!”;
märguanne (väärtus) // “Tere!”;
)
märguanne (väärtus) // viga; väärtus väljaspool funktsiooni pole saadaval.
2) Sulgurid:
Sulgemine on sisemine ulatus, millel on juurdepääs väljaspool plokki deklareeritud muutujatele, isegi pärast seda, kui need muutujad on rakendusalast välja langenud. Ehkki objekti meetodid ei pääse teistele lokaalsetele muutujatele juurde, on sisemisel objektil juurdepääs oma põhifunktsiooni muutujatele. Võtame selle mõistmiseks näite.
var person = (
var name = “JavaScript”;
return (
setName : function(value)(
name = value;
),
getName : function()(
return name;
)
);
);
alert(person.name) //JavaScript
person.setName(“Java”)
alert(person.name) //Java
Nii saame sel viisil kuulutada sisemised objektid või meetodid andmete peitmiseks ja neile pääseb juurde vanemobjektide abil.
Pärand:
JavaScript toetab pärandumist prototüüpse pärimise kaudu, mis võimaldab JavaScripti objektil omandada kõik objektid või mõned neist teistest objektidest või vanemobjektidest.
1) Prototüüp:
JavaScripti kirjeldatakse prototüüpipõhise keelena, et pärandiobjektil oleks prototüübiobjekt, mis pärib meetodid ja omadused teistelt objektidelt. Objektide prototüüpobjektil võib olla ka prototüübiobjekt, mis pärib meetodeid ja omadusi vanemobjektilt ja nii edasi, seda nimetatakse prototüüpide ahelaks.
Ülaltoodud pilt näitab loodava objekti “loom” kõiki omadusi. Niisiis, "nimi" ja "tüüp" on objekti "loom" omadused ja sellised omadused nagu valueOf, toString, toLocaleString jne on emaobjekti omadused, mis on päritud loomsele objektile. Vaadake allolevat pilti, mis näitab vanemobjekti atribuute proto abil.
Polümorfism:
Polü tähendab "paljusid", morfism tähendab "vorme", polümorfism on kõike muud kui neil on erinevad vormid. JavaScriptis saavutatakse polümorfism üldise, ülekoormamise ja struktuurilise alamtüpiseerimisega.
1) geneerilised tooted (parameetriline polümorfism):
See ütleb, et muutuja tüüp ei oma üldse tähtsust, need on omavahel asendatavad. Funktsioon, mis määratleb parameetrilise polümorfse tüübi ühe või mitu parameetrit, ei tohi tüüpide kohta midagi teada, see peaks käsitlema kõiki samu, kuna suudab kohaneda mis tahes tüübiga. Vaadake allolevat näidet
konstantsed andmed = x => y => y.suur (x);
andmed (3) ((1, 2)); // (1, 2, 3)
andmed (“c”) ((“a”, “b”)); // (“a”, “b”, “c”)
2) ülekoormus (ad-hoc polümorfism):
Ülekoormus JavaScriptis saavutatakse as-hoc polümorfismi abil. Ad-hoc polümorfism on omamoodi polümorfism, milles polümorfseid funktsioone saab rakendada mitut tüüpi argumentidele, kuna polümorfsed funktsioonid võivad tähistada erinevate heterogeensete rakenduste arvu sõltuvalt argumentide tüüpidest. Vaadake allpool mainitud näidet
Operaatorit “+” kasutatakse mitmel viisil, näiteks numbrite lisamiseks, keelte sidumiseks jne.
1 + 2 = 3
1, 2 + 2, 3 = 3, 5
“Java” + “Script” = “JavaScript”
3) Struktuurne alamtüüpimine (struktuurne polümorfism):
Struktuurne polümorfism ütleb, et erinevad tüübid on ekvivalentsed, näiteks juhul, kui ühel tüübil on kõik teise tüübi omadused ja mõned lisaomadused (sama struktuuri järgides)
Konstikaal = (väärtus: 100, andmed: tõene)
Konstandi kiirus = (väärtus: 200, andmed: vale, valesti: (1, 2, 3))
Kiirust peetakse kaalu alamtüübiks.
Järeldus - kas Javascript on orienteeritud objektile?
Kuna arutasime teemal Javascripti objektorienteeritud, siis võime nüüd järeldada, et JavaScript on objektorienteeritud keel. Ehkki sellel pole ühtegi reaalset klassi, on see siiski objektorienteeritud keel, kuna järgib objektorienteeritud põhimõtete põhimõisteid. Niisiis, keel võib olla objektorienteeritud, kui see toetab objekte isegi ilma klassideta.
Soovitatavad artiklid
See on olnud Javascripti objektorienteeritud juhend. Siin oleme arutanud Javascripti ja objektorienteeritud põhimõisteid ja omadusi. Võite vaadata ka järgmisi artikleid:
- JavaScript vs VBScript
- JavaScripti kasutusviisid
- JavaScript vs AngularJS
- JavaScript vs Node JS
- Objekti täielik juhend Java-s
- Objekt Pythonis
- Näited ja kuidas Generics töötab C #