Introduktion till designmönsterintervjufrågor och svar

Designmönster är en välbeskriven lösning på de vanligaste problem som uppstår under mjukvaruutveckling. Designmönster representerar bästa praxis som utvecklats under en tid av erfarna mjukvaruutvecklare. De främjar återanvändbarhet vilket leder till en mer robust och underhållbar kod.
Designmönster beskrevs först i boken A Pattern Language av arkitekten Christopher Alexander. Senare beskrevs de i Design Patterns: Element av återanvändbar objektorienterad programvara skriven av fyra författare (Erich Gamma, Richard Helm, Ralph Johnson och John Vlissides) kallas också "Gang of Four".
Designmönstren kan klassificeras i tre huvudkategorier:
• Skapningsmönster
• Beteendemönster
• Funktionella mönster

Så medan du förbereder dig för en jobbintervju i Design. Jag är säker på att du vill känna till de vanligaste intervjuerna i designmönstret för 2019 Frågor och svar som hjälper dig att enkelt bryta designmönsterintervjuet. Nedan är listan över de bästa designmönsterintervjufrågor och svar till din undsättning.

Nedan listas några av de vanligt ställda frågorna om designmönster från 2019:

1. Vad är Singleton-mönstret i Java?

Svar:
Singleton-mönster är ett kreativt mönster som gör att endast en instans av en klass kan skapas som kommer att vara tillgänglig för hela applikationen. Den största fördelen med Singleton-designmönstret är att det sparar minne eftersom den enda instansen återanvändas om och om igen; det finns inget behov att skapa ett nytt objekt vid varje begäran. I vår applikation kan vi till exempel använda en enda databasanslutning som delas av flera objekt i stället för att skapa en databasanslutning för varje begäran.

2. Vilka är nackdelarna med att använda singleton designmönster?

Svar:
De största nackdelarna med att använda singleton designmönster är:
a) Singleton gör att koden är tätt kopplad. Singleton-objektet exponeras globalt och är tillgängligt för en hel applikation. Således blir klasser som använder detta objekt tätt kopplade; varje förändring i det globala objektet kommer att påverka alla andra klasser som använder det.
b) De döljer beroenden istället för att avslöja dem.
c) Singletonmönster stöder inte arv.
d) Singleton-principen kan brytas med tekniker som kloning. Om en applikation körs på flera JVM: er kan Singleton i detta fall vara trasigt.

3. Vilket designmönster använder du för att skapa ett komplext objekt?

Svar:
Builder designmönster används för att konstruera ett komplext objekt. Det är utformat för att lösa problemen med fabriksmönster och abstrakt designmönster.

4.Varför använda en fabriksklass för att instansera en klass när vi kan använda en ny operatör?

Svar:
Fabriksklasser ger flexibilitet när det gäller design. Nedan är några av fördelarna med fabriksklass:
• Fabriksdesignmönster resulterar i mer avkopplad kod eftersom det gör att vi kan dölja kreativ logik från beroende kod
• Det gör att vi kan införa en Inversion of Control-behållare
• Det ger dig mycket mer flexibilitet när det är dags att ändra applikationen eftersom vår kreativa logik är dold från beroende kod

5. Vad är skillnaden mellan fabrik och abstrakt fabriksmönster?

Svar:
Både fabrik och abstrakt fabrik är kreativa designmönster. Den största skillnaden mellan dessa två är att ett fabriksmönster skapar ett objekt genom arv och producerar endast en produkt. Å andra sidan skapar ett abstrakt fabriksmönster objektet genom sammansättning och producerar familjer av produkter.

6.Vad är designmönster för observatörer i Java?

Svar:
Observerdesignmönster är ett av beteendemönster som definierar beroende mellan ett och många beroende mellan objekt och är användbart när vi är intresserade av ett tillstånd av ett objekt och vi vill bli meddelade när det ändras i objekttillståndet. I Observer-designmönstret, när ett objekt ändrar dess tillstånd, meddelas alla dess beroende objekt automatiskt, objektet kallas Ämne och beroende kallas Observatörer. Java tillhandahåller bibliotek för att implementera Observer-designmönster med java.util.Observable klass & java.util.Observer-gränssnitt.

7. Skillnad mellan strategi och statligt designmönster i Java?

Svar:
Både strategi, liksom statligt designmönster, liknar i praktiken, men de har olika implementeringar som följer är några av de största skillnaderna mellan dessa två:
a.Strategi designmönster definierar en uppsättning algoritmer för att utföra ett specifikt beteende medan statligt designmönster tillåter ett objekt att ändra dess beteende när det är internt tillstånd ändras.
b.Strategidesignmönster tillåter oss inte att lagra en referens till kontextobjektet medan statligt designmönster lagrar referensen till kontextobjektet som innehåller dem.
c.I strategidesignmönster är klienten medveten om den strategi som väljs för implementering medan klienten i statligt designmönster inte bestämmer vilken stat som ska väljas för implementering.
d.Strategimönster behandlar HUR ett objekt utför en viss uppgift medan statligt designmönster handlar om vad ett objekt är.
e.Det finns ingen relation mellan efterträdare / föregångare i strategidesignmönster medan i tillståndsmönster är tillstånd relaterade till varandra som efterföljare och föregångare.

8.Vad är null Objektmönster?

Svar:
Nollobjektmönster är ett designmönster där nullobjekt ersätter NULL-kontroll för exempelvis variabel. Istället för att kontrollera om ett nollvärde återspeglar Null Object ett förhållande till ingenting. Det kan också användas för att tillhandahålla standardbeteende om data inte är tillgängliga.

9. Ge ett exempel på dekoratörsmönster?

Svar:
Dekoratormönstret, även känt som ett strukturellt mönster, används för att lägga till ytterligare funktionalitet till ett visst objekt under körning. Det lindar det ursprungliga objektet genom dekoratörsobjekt. När du till exempel köper en hamburgare kan du anpassa den genom att lägga till extra fyllning och såser, nu måste kostnaden för dessa artiklar läggas till slutpriset. Anpassningen kommer att skilja sig från kund till kund och erbjudande från en butik. Att skapa olika klasser av hamburgare med olika fyllningar kommer att skapa många klasser. Decorator löser detta problem genom att utvidga funktionaliteten för en enskild Burgerklass vid körning baserat på kundens begäran.

10. Vad är fördelen med att använda prototypmönster jämfört med att skapa en instans med det nya sökordet?

Svar:
Ibland är objekt skapande tungviktigt och kräver mycket resurser, att skapa en ny instans kommer att påverka prestandan. I sådana fall används ett prototypmönster som hänvisar till att skapa duplicerade objekt. I prototypdesignmönster, om ett liknande objekt redan finns, görs kloning med prestanda i åtanke.

Rekommenderad artikel

Detta har varit en omfattande guide till intervjufrågor och svar på designmönstret så att kandidaten enkelt kan slå samman dessa designmönsterintervjufrågor. Du kan också titta på följande artiklar för att lära dig mer -

  1. 25 viktigaste intervjufrågor inom datavetenskap
  2. Känner till de tio bästa användbara agila intervjufrågorna och svaret
  3. Topp 5 mest värdefulla intervjufrågor för datavetenskap
  4. Fantastiska 20 tips för att spika din nästa jobbintervju (idéer)