En kort guide til designmønstre i JavaScript



Denne artikel hjælper dig med en detaljeret tilgang til designmønstre i JavaScript på en forenklet måde for bedre forståelse.

er de avancerede objektorienterede løsninger på de ofte tilbagevendende softwareproblemer. Mønstre er genanvendelige designs og interaktioner mellem objekter. Hvert mønster har et navn og bliver en del af et ordforråd, når man diskuterer komplekse designløsninger.

Hvad er designmønstre i JavaScript?

kan defineres som en softwareskabelon eller en beskrivelse til løsning af et problem, der opstår i flere tilfælde, når du designer en softwareapplikation eller en softwarestel.





Builder Design Mønstre

Lad os nu diskutere Gang of Four (GoF)



Bande af fire

Det 23 Gang of Four (GoF) mønstre betragtes normalt som fundamentet for alle de andre mønstre.

The Four of Gang (GoF) fra designmønstre:



Elementer af genanvendelig objektorienteret software, Addison-Wesley Professional Computing Series, af Erich Gamma, Richard Helm, Ralph Jhonson, og John Vlissides. Tdisse 23 GoF-mønstre betragtes generelt som fundamentet for alle andre mønstre.De er kategoriseret i tre grupper: Kreativ, strukturel og adfærdsmæssig.

Typer af designmønstre

Der er grundlæggende tre forskellige typer designmønstre i JavaScript. De er som følger:

Skabelsesmønstre

java hvordan man bruger iterator

Abstrakt fabrik: Dette skaber en instans med flere klassefamilier. Dette giver en grænseflade til oprettelse af familier, der er relaterede eller afhængige objekter uden specifikation af deres konkrete klasser.

Bygger: Denne adskilte objektkonstruktion fra dens repræsentation. Adskiller også konstruktionen af ​​et komplekst objekt fra dets repræsentation, så den nøjagtige samme byggeproces kan oprettes med forskellige repræsentationer.

Fabriksmetode: Dette skaber en instans for flere afledte klasser. Definerer også en grænseflade til oprettelse af et objekt, men det lader underklassen beslutte, hvilken klasse der skal instantieres. Dette har også en fabriksmetode, der lader en klasse udsætte instantiering til underklasser.

Prototype: Det er en fuldt initialiseret instans, som kan kopieres eller klones. Specifikt opretter den slags objekter, der skal oprettes ved hjælp af en prototypisk forekomst, nye objekter ved at kopiere denne prototype.

Singleton: Det er fuldt initialiserede tilfælde, der skal kopieres eller klones.Det er af en bestemt type objekter, der skal oprettes ved hjælp af en prototypisk forekomst og oprette nye objekter ved at kopiere denne prototype.

Strukturelle mønstre

Adapter: Det matcher grænseflader for de forskellige klasser. Konverterer også grænsefladen til en klasse til en anden grænseflade undtagen den, der har klienten. Adapteren lader også klasser arbejde sammen, som ellers ikke kunne have været på grund af uforenelighedsgrænsefladerne.

forklare forskellen mellem foranderlige og uforanderlige objekter.

Bro: Det adskiller et objekts interface fra dets implementering. Afkobling af et abstrakt fra dets implementering, så de to kan variere uafhængigt.

Sammensatte: En træstruktur består af enkle og sammensatte objekter, sammensatte objekter i træstrukturer for at repræsentere del-hele hierarkier. Composite lader kunderne behandle individuelle objekter og kompositioner af objekter ensartet.

Dekoratør: Tilføjer ansvaret til objekter dynamisk. Vedhæfter det yderligere ansvar til et objekt dynamisk. Dekoratører giver også et fleksibelt alternativ til underklasse til udvidelse af funktionaliteter.

Facade: En enkelt klasse, der repræsenterer et helt delsystem og giver en ensartet grænseflade til et sæt grænseflader i et system. Facade definerer en grænseflade på højere niveau, der gør undersystemet lettere at bruge.

Flyvægt: En finkornet instans, der bruges til effektiv deling for effektivt at understøtte et stort antal finkornede genstande. En flyvevægt er et delt objekt, der kan bruges i flere antal sammenhænge samtidigt.Flyvevægten fungerer også som et uafhængigt objekt i hver kontekst - det skelnes ikke fra en forekomst af objekter, der ikke deles.

Proxy: Det er et objekt, der repræsenterer et andet objekt. Det giver et surrogat eller et stedholderobjekt til at kontrollere adgangen til det.

Adfærdsmønstre:

Ansvarlighedskæde: Det er en måde at videresende en anmodning mellem en kæde af objekter. Det undgår koblingen med afsenderen og sender en anmodning til modtageren ved at give mere end et objekt en chance for at håndtere anmodningen. De modtagende genstande lænkes og sendes anmodningen langs kæden, indtil en genstand håndterer den.

Kommando: Det indkapsler en kommandoanmodning som et objekt. Indkapslet anmodning som et objekt, så du kan parametrere klienter med forskellige anmodninger, kø- eller loganmodninger og understøtte de fortrydelige handlinger.

Tolk: Det er en måde at inkludere sprogelementer i et program. Angivet et sprog, definer en repræsentation for dens grammatik sammen med en tolk, der bruger repræsentationen til at fortolke sætninger på sproget.

Iterator: Den sekventielle adgang til elementerne i en samling giver en måde at få adgang til elementerne i et samlet objekt sekventielt uden at udsætte dets underliggende repræsentation.

Mægler: Det definerer forenkler kommunikationen mellem klasser. Definer et objekt, der indkapsler, hvordan et sæt objekter interagerer. Mægler fremmer løs kobling ved at forhindre objekter i at henvise eksplicit til hinanden, og det giver dig mulighed for at variere deres interaktion uafhængigt.

Memento: Det fanger og gendanner objektets interne tilstand. Det overtræder ikke indkapsling, fanger og eksternaliserer et objekts interne tilstand, så objektet senere kan gendannes til denne tilstand.

Observatør: Det er en måde at meddele ændringen til et antal klasser. Det definerer en en-til-mange afhængighed mellem objekter, så når et objekt ændrer tilstand, underrettes og opdateres alle dets afhængige automatisk.

hvad er pakke i java

Stat: Det ændrer et objekts opførsel, når dets tilstand ændres. Tillader, at et objekt ændrer dets adfærd, når det er ændringer i intern tilstand. Objektet ser ud til at ændre sin klasse.

Strategi: Det indkapsler en algoritme inde i en klasse og definerer en familiealgoritme, indkapsler hver enkelt og gør derefter udskiftelig. Strategi lader algoritmen variere uafhængigt af de klienter, der bruger den.

Skabelon: Udsæt de nøjagtige trin i en algoritme til en underklasse. Det definerer skelettet til en algoritme i en operation og udsætter nogle vigtige trin til underklasser. Med skabelonmetode kan vi oprette en underklasse, der omdefinerer bestemte trin i en algoritme uden at ændre algoritmens struktur.

Besøgende: Det definerer en ny operation til en klasse uden ændringer. Repræsenter en operation, der skal udføres på elementerne i en objektstruktur. Besøgende lader dig definere en ny operation uden at ændre klasser af de elementer, som den fungerer på.

Med dette kommer vi til slutningen af ​​denne artikel. Jeg håber, du har forstået designmønstrene i JavaScript, deres typer, betydning og deres implementering.

Nu hvor du har forstået det grundlæggende i Design Patterns i JavaScript, skal du tjekke af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-uddannelses- og certificeringskursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Forår .

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Design Patterns in JavaScript' -blog, og vi vender tilbage til dig hurtigst muligt.