Wat is samengesteld ontwerppatroon?

Mahipal Nehra
Mahipal Nehra

Volgen

8 Mei 2020 · 3 min lezen

Composiet Design Pattern is een design pattern dat valt in de categorie van structurele patronen. Dergelijke patronen houden zich bezig met hoe klassen en objecten worden samengesteld om grotere structuren te vormen. Composietpatroon beschrijft een dergelijke manier om een klassenhiërarchie op te bouwen die bestaat uit klassen voor twee verschillende soorten objecten (composiet en primitief). Een doel van software engineering is om een hoge samenhang tussen modules te behouden en de andere om koppeling te verminderen.

veel toepassingen die te maken hebben met hiërarchische gegevens moeten ervoor zorgen dat ze niet te veel afhankelijkheid hebben onder hun klassen omdat dergelijke toepassingen voortdurend hun componenten moeten updaten. Een bestandssysteem is een klassiek voorbeeld van hiërarchische structuur die mappen binnen mappen en bestanden binnen mappen bevat. Een bestand kan een video, tekstdocument,audiobestand. Er kunnen dus meerdere audiobestanden in één map en meerdere videobestanden in andere zijn en beide kunnen in een andere map zitten die “media” vertegenwoordigt, die zich in een andere map met de naam “lezingen”kan bevinden. De Lecture folder kan ook een andere map bevatten die onderwerp vertegenwoordigt, en dit kan voor altijd doorgaan. Het punt dat we proberen te maken is dat als je probeert om een dergelijke applicatie die zich bezighoudt met hiërarchische componenten te ontwerpen, je uiteindelijk het creëren van klasse structuren die sterk gekoppeld zijn en om meer componenten toe te voegen kan een hoop redundantie optreden. Om dit veelvoorkomende probleem op te lossen biedt composietontwerp een elegante oplossing. Allereerst, laten we eens kijken wat is samengesteld ontwerp patroon? (Java Development Company)

Composite design pattern biedt een ontwerphiërarchie, waarin knooppunten met kinderen verschillen van knooppunten zonder kinderen. U kunt denken aan de boom gegevensstructuur in dit geval. En in vergelijking met ons voorbeeld kan een knooppunt een map zijn en kunnen kinderen bestanden of mappen zijn die uit bestanden bestaan. Een groep objecten worden op dezelfde manier behandeld als een enkele instantie van hetzelfde type van dat object, dus wat er ook gebeurt, we zullen het knooppunt en de kinderen ervan beschouwen als de map component, dit maakt het makkelijker voor ons om onze hiërarchische structuur van componenten voor onze toepassing te ontwerpen. We zullen naar componenten (objecten) binnen componenten (objecten) verwijzen als composities. Het samengestelde ontwerppatroon laat de cliënt individuele objecten en composities uniform behandelen. Het belangrijkste ding om in gedachten te houden is de boomstructuur, terwijl het omgaan met dit ontwerppatroon. Om beter te begrijpen wat is samengesteld ontwerppatroon en de toepasbaarheid ervan, laten we gebruik maken van een code voorbeeld in java die vergelijkbaar is met het bestandssysteem voorbeeld dat we gaven.

Lees:”All you need to know about Template Method Design Pattern”

Composite design pattern example

het voorbeeld dat we gaan gebruiken zal een cursus zijn die bestaat uit onderwerpen en lezingen. Als je een cursus over een onderwerp volgt, zal er een onderwerp zijn en dat onderwerp kan uit vele onderwerpen en lezingen bestaan. Dus, hoe zou dat worden uitgevoerd? We zullen u eerst de gemeenschappelijke aanpak laten zien.

laten we een Lecture Class aanmaken

fig: Composite Design Pattern example in Java — lecture Class

de lecture heeft een naam en een weergavemethode om de hiërarchie ervan weer te geven.

Het Onderwerp Class

Fig: composiet design patroon voorbeeld in java — Topic Klasse

In ons voorbeeld, de topic klasse heeft de eigenschappen van het toevoegen van een onderwerp, het toevoegen van een lezing, en de weergave van de lezingen en onderwerpen in een hiërarchie. Onderwerp bindt andere onderwerpen en lezingen in zichzelf. We kunnen dus over elk onderwerp subtopics en lezingen houden.

eens kijken hoe we deze combineren in de hoofdmethode

volledig artikel: https://www.decipherzone.com/blog-detail/when-use-composite-design-pattern-java

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.