Lyhyt opas JavaScriptin suunnittelumalleista

Tämä artikkeli auttaa sinua käsittelemään yksityiskohtaisesti JavaScriptin suunnittelumalleja yksinkertaistetulla tavalla ymmärryksen parantamiseksi.

ovat kehittyneitä olio-ratkaisuja yleisesti toistuviin ohjelmisto-ongelmiin. Kuviot ovat esineiden uudelleenkäytettäviä malleja ja vuorovaikutusta. Jokaisella kuviolla on nimi ja siitä tulee osa sanastoa keskusteltaessa monimutkaisista suunnitteluratkaisuista.

Mitä ovat suunnittelumallit JavaScriptissä?

voidaan määritellä a ohjelmistomalli tai kuvaus ongelman ratkaisemiseksi, joka esiintyy useissa tapauksissa ohjelmistosovellusta tai ohjelmistokehystä suunniteltaessa.





Rakentajan suunnittelukuviot

Keskustelkaamme nyt neljän joukosta (GoF)



Neljän jengi

23 Neljän jengi (GoF) kuvioita pidetään yleensä kaikkien muiden kuvioiden perustana.

Neljän jengi (GoF) suunnittelukuvioista:



Uudelleenkäytettävien olio-ohjelmistojen elementit, Addison-Wesley Professional Computing -sarja, kirjoittanut Erich Gamma, Richard Helm, Ralph Jhonson, ja John Vlissides. Tnäitä 23 GoF-mallia pidetään yleensä kaikkien muiden mallien perustana.Ne on luokiteltu kolmeen ryhmään: Luova, rakenteellinen ja käyttäytyminen.

Suunnittelumallien tyypit

JavaScriptissä on periaatteessa kolme erityyppistä suunnittelumallia. Ne ovat seuraavat:

Luovat mallit

Abstrakti tehdas: Tämä luo esiintymän, jossa on useita luokkaperheitä. Tämä tarjoaa käyttöliittymän perheiden luomiseen, jotka ovat toisiinsa liittyviä tai riippuvaisia ​​objekteja, ilman niiden konkreettisten luokkien määrittelyä.

Rakentaja: Tämä erotti objektirakenteen sen esityksestä. Erottaa myös monimutkaisen kohteen rakentamisen sen esityksestä, jotta täsmälleen sama rakennusprosessi voidaan luoda eri esityksillä.

Tehdasmenetelmä: Tämä luo instanssin useille johdetuille luokille. Määritetään myös käyttöliittymä objektin luomista varten, mutta se antaa aliluokan päättää, minkä luokan instantisoida. Tällä on myös tehdasmenetelmä, jonka avulla luokka voi lykätä aliluokkien välitöntä aloittamista.

Prototyyppi: Se on täysin alustettu instanssi, joka voidaan kopioida tai kloonata. Erityisesti prototyyppistä instanssia käyttämällä luotavat objektit luovat uusia objekteja kopioimalla tämän prototyypin.

Singleton: On täysin alustettuja instansseja kopioitava tai kloonattava.On tietyntyyppisiä objekteja luoda prototyyppistä instanssia käyttämällä ja luoda uusia objekteja kopioimalla tämä prototyyppi.

Rakenteelliset kuviot

Sovitin: Se vastaa eri luokkien rajapintoja. Muuntaa myös luokan käyttöliittymän toiseksi käyttöliittymäksi lukuun ottamatta sitä, jolla on asiakas. Sovitin antaa myös luokkien toimia yhdessä, mikä ei olisi voinut johtua muuten yhteensopimattomien rajapintojen takia.

Silta: Se erottaa kohteen käyttöliittymän sen toteutuksesta. Irrota abstrakti sen toteutuksesta, jotta nämä kaksi voivat vaihdella itsenäisesti.

Komposiitti: Puun rakenne koostuu yksinkertaisista ja yhdistetyistä esineistä, jotka muodostavat esineet puurakenteiksi edustamaan koko kokonaishierarkioita. Composite antaa asiakkaiden kohdella yksittäisiä esineitä ja esineiden koostumuksia yhdenmukaisesti.

Sisustusarkkitehti: Lisää objektien vastuut dynaamisesti. Liittää lisävastuut esineeseen dynaamisesti. Sisustajat tarjoavat myös joustavan vaihtoehdon alakategorialle toimintojen laajentamiseksi.

Julkisivu: Yksi luokka, joka edustaa koko alijärjestelmää ja tarjoaa yhtenäisen käyttöliittymän järjestelmän rajapintaryhmään. Julkisivu määrittelee ylemmän tason käyttöliittymän, joka helpottaa osajärjestelmän käyttöä.

nosta jotain voimaksi java

Kärpässarja: Hienorakeinen instanssi, jota käytetään tehokkaaseen jakamiseen tukemaan tehokkaasti suuria määriä hienorakeisia esineitä. Perhopaino on jaettu objekti, jota voidaan käyttää samanaikaisesti useissa yhteyksissä.Perhopaino toimii myös itsenäisenä objektina kussakin kontekstissa - se ei ole erotettavissa niiden esineiden esiintymästä, joita ei jaeta.

Välityspalvelin: Se on objekti, joka edustaa toista kohdetta. Se tarjoaa korvikkeen tai paikkamerkkiobjektin, jolla hallitaan pääsyä siihen.

Käyttäytymismallit:

Vastuuketju: Se on tapa välittää pyyntö esineiden ketjun välillä. Se välttää yhteyden muodostamisen lähettäjän kanssa ja lähettää pyynnön vastaanottimelleen antamalla useammalle kuin yhdelle mahdollisuudelle käsitellä pyyntöä. Vastaanottavat kohteet ketjutetaan ja välitetään pyyntö ketjua pitkin, kunnes esine käsittelee sitä.

Komento: Se kapseloi komentopyynnön objektina. Kapseloitu pyyntö objektina, joten voit parametroida asiakkaita erilaisilla pyyntö-, jono- tai lokipyynnöillä ja tukea kumottavia toimintoja.

Tulkki: Se on tapa sisällyttää kielielementtejä ohjelmaan. Määritä kieli, määritä sen kieliopille esitys yhdessä tulkin kanssa, joka käyttää esitystä tulkitsemaan lauseita kielellä.

Iteraattori: Kokoelman elementtien peräkkäinen käyttö tarjoaa tavan päästä käsiksi aggregaattikohteen elementteihin peräkkäin paljastamatta sen taustalla olevaa esitystä.

Sovittelija: Se määrittelee yksinkertaistaa luokkien välistä viestintää. Määritä objekti, joka kapseloi kuinka joukko esineitä on vuorovaikutuksessa. Välittäjä edistää löysää kytkentää estämällä esineitä viittaamasta toisiinsa nimenomaisesti, ja sen avulla voit muuttaa niiden vuorovaikutusta itsenäisesti.

Memento: Se sieppaa ja palauttaa kohteen sisäisen tilan. Se ei riko kapselointia, siepata ja ulkoistaa objektin sisäistä tilaa, jotta objekti voidaan palauttaa tähän tilaan myöhemmin.

Tarkkailija: Se on tapa ilmoittaa muutoksesta useille luokille. Se määrittelee objektien välisen riippuvuuden yhdestä moneen siten, että kun yksi objekti muuttaa tilaa, kaikki sen riippuvaiset henkilöt ilmoitetaan ja päivitetään automaattisesti.

Osavaltio: Se muuttaa kohteen käyttäytymistä, kun sen tila muuttuu. Antaa objektin muuttaa käyttäytymistään, kun se on sisäinen tilamuutos. Kohde näyttää muuttavan luokkaa.

Strategia: Se kapseloi algoritmin luokan sisällä ja määrittelee perheen algoritmin, kapseloi ne kaikki ja tekee sitten vaihdettavissa. Strategian avulla algoritmi voi vaihdella riippumatta sitä käyttävistä asiakkaista.

Sapluuna: Siirrä algoritmin tarkat vaiheet alaluokkaan. Se määrittelee operaation algoritmin luurangon, viivästyttäen joitain tärkeitä vaiheita alaluokkiin. Template Method -menetelmän avulla voimme luoda aliluokan määrittelemään algoritmin tietyt vaiheet muuttamatta algoritmin rakennetta.

Vierailija: Se määrittelee luokan uuden toiminnon ilman muutoksia. Esitä operaatio, joka suoritetaan objektirakenteen elementeille. Visitor antaa sinun määritellä uusi operaatio muuttamatta niiden elementtien luokkia, joilla se toimii.

Tämän avulla olemme tämän artikkelin lopussa. Toivon, että olet ymmärtänyt JavaScriptin suunnittelumallit, niiden tyypit, tärkeyden ja toteutuksen.

Nyt kun olet ymmärtänyt JavaScript-mallin perustekijät, tutustu Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssit on suunniteltu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä. Kurssi on suunniteltu antamaan sinulle etumatka Java-ohjelmointiin ja kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia ​​Java-kehyksiä, kuten Hibernate & kevät .

Onko sinulla kysymys meille? Mainitse se tämän “Design Patterns in JavaScript” -blogin kommenttiosassa, niin otamme sinuun yhteyttä mahdollisimman pian.