Mall i Java - Krav och fördelar med mall i Java

Innehållsförteckning:

Anonim

Mall i Java

Designmönster hjälper en kodare att skriva ren, effektiv och icke upprepande kod med mindre koppling eller beroende mellan de enskilda driftenheterna. Närhelst en kodare analyserar kravet som visas av klienten är lämpligt designmönster för kodimplementering den första lösningen som ska tas om hand, på vilken koden ska skalas senare, kan vissa ytterligare begränsningar om att läggas till också införlivas.

Designmönster väljs alltid utifrån skalbarhet och ren implementering.

Vi väljer mallar när vi vill fylla dem via vissa implementationer, dessa kallas mallar.

Och i kodningsarenan använder vi dessa paradigmer under följande slags affärsscenarier.

Scenario 1 -

Du ska utforma en webbaserad lösning för mall i Java där du blir ombedd att implementera ett fordons karakteristiska egenskaper som dess hastighetsberäkningsformel, momentberäkning etc. Så för en cykel skulle det vara annorlunda än vad som skulle vara för en bil, och om vi ser på skalbarhetsperspektivet lägger vi till en grundmall som bara har det yttre skelettet av dessa beräkningsmetoder och sedan har vi precis lagt till varianter av de implementeringarna i vår kod, och därmed gjort en flexibel design. Om du bara ser den här mallen skulle en användare få en uppfattning om funktionaliteterna du erbjuder och kan se fram emot endast i relaterade klasser.

Scenario 2 -

Ett annat fall kan vara att generera en gemensam mall för databasklasser som du kommer att ringa i ditt projekt, du kanske använder Oracle, MySQL eller DB2, och sannolikt i olika kodningsscenarier ser du fram emot att ansluta till dem i olika fall tiden, så i mallen kan du mata användarnamn, lösenord, få anslutning etc. egenskaper och de utökade klasserna skulle ge implementeringsinformationen när du söker.

En Java-utvecklare vet hur man implementerar den här typen av funktionalitet !! Ja, en abstrakt klass är ett rätt svar, jag hoppas att du vet att när vi har scenarier där nära besläktade enheter ska sättas in i en lösning så väljer vi abstrakta klasser (i annat fall löser gränssnitten också vårt syfte).

Implementeringsmall i Java

1. Gör basklassen till abstrakt som också innehåller mallmetoderna och de abstrakta metoderna.

2. Mallmetoderna är av slutlig karaktär och kommer inte att ändras därefter.

3. De abstrakta metoderna är nödvändiga för att kunna implementeras med stöd av affärslogikkod i implementeringsklasserna.

4. Metoden kan göras abstrakt i barnklasser om den inte bara måste implementeras där.

5. Att ta hand om undantagshantering på ett lämpligt sätt är också ett viktigt scenario.

6. Rätt val på vad som måste markeras abstrakt och vad som inte ska vara.

Metoderna med karosser i basklassen görs av slutlig typ eftersom de inte får åsidosättas, som beräkning av fordonsklass rpm kan göras på samma sätt.

Nedan här har vi definierat det Java-mallbaserade exemplet, det inkluderar provimplementeringen av samma -

public abstract Vehicle
(
String fuelType;
Int countOfSeats;
public abstract double calcSpeed() throws Exception;
public abstract double calcTorque() throws Exception;
public final void templateMethod()
(
Task1();
Task2();
Task3();
)
public Bike extends Vehicle
(
@Override
public abstract double calcSpeed() throws Exception
(
try
(
return distance/time;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
@Override
public abstract double calcTorque() throws Exception
(
try
(
return radialLength * force;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
)
public car extends Vehicle
(
Int doorCount; // door doesn't exist in all vehicles so has been added here
@Override
public abstract double calcSpeed() throws Exception
(
try
(
return distance/time;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
@Override
public abstract double calcTorque() throws Exception
(
try
(
return radialLength * force;
)
Catch(Exception e)
(
System.out.println(e.printStackTrace());
)
)
)

Du kan använda eclipse eller andra online-plattformar för att kontrollera denna implementering med dina egna implementationer.

Systemkrav innan du kodar

1. Företrädesvis ska Java 8 installeras.

2. Systemvariabler ska vara korrekt konfigurerade för JRE.

3. En IDE som förmörkelse krävs också som automatiskt kontrollerar syntaktiska fel.

4. Debugging endast med IDE.

5. Plug-ins för analys av malldesign.

6. Klassdiagramassocieringsverktyg för att känna till den högre nivån för arv mellan de klasser som du gjort i mallen designmönsterimplementering.

7. Alla Windows, Linux eller MAC skulle göra din uppgift.

Fördelar med mall i Java

  1. Förhindrar koddubbling, eftersom de allmänna sakerna bara kan implementeras i den abstrakta klassen, de nödvändiga variationerna kan implementeras i underklasserna.
  2. Variabla mönster kan implementeras i underklasserna baserat på arvsrelationen för implementeringen. Denna process kallas metodöverskridande.
  3. Huvudmallen kan ha abstrakta och icke-abstrakta metoder, vilket gör implementeringen enklare och flexibel.
  4. Kodens längd förblir begränsad.
  5. Koden verkar ren och effektiv.
  6. Lätt att felsöka, vilket gör utvecklarens liv lätt.

Använd fall

  1. Har en relation implementationer.
  2. Databasimplementeringar.
  3. Implementering av fordonsvarianter.
  4. Fruktsamling och implementering av vitamineffekter.
  5. Arbetsflödesmetodimplementering.

Vad mer kan du utforska?

Är du medveten om begreppen gränssnittsimplementeringar, med Java 8, med nya funktioner kan du prova gränssnittets implementering mot de härledda klasserna som nämns ovan och du kan prova olika affärsscenarier, i versioner av Java 8 och ovan, är du liberal att åsidosätta abstrakta metoder för gränssnitt i implementeringsklasserna, bör du titta på den dokumentation som presenteras av Oracle för samma sak.

Du bör också utforska andra designmönster eftersom de är viktiga och förväntade av erfarna java-utvecklare i hela branschen.

Rekommenderade artiklar

Detta har varit en guide till mall i Java. Här diskuterade vi konceptet, kravet, användningen och fördelarna med mallar i Java. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Vad är designmönster i Java?
  2. Introduktion till JavaScript
  3. Hur man installerar selen
  4. Vad är Cognos?
  5. Abstrakta klasser i JavaScript
  6. JRE vs JVM | Topp 8 skillnader med (Infographics)