Mal i Java - Krav og fordeler ved mal i Java

Innholdsfortegnelse:

Anonim

Mal i Java

Designmønstre hjelper en kodeør med å skrive ren, effektiv og ikke-repeterende kode med mindre kobling eller avhengighet mellom de enkelte driftsenhetene. Hver gang en koder analyserer kravet som er beskrevet av klienten, er passende designmønster for kodeimplementering den første løsningen som skal tas vare på, som koden skal skaleres senere, kan også noen ekstra begrensninger for å bli lagt inn.

Designmønstre velges alltid med sammenheng med skalerbarhet og ren implementering.

Vi velger maler når vi ser etter å fylle dem via visse implementeringer, disse kalles maler.

Og på kodingsarenaen bruker vi disse paradigmene under følgende type forretningsscenarier.

Scenario 1 -

Det er meningen at du skal designe en nettbasert løsning for Mal i Java der du blir bedt om å implementere de kjennetegnende egenskapene til et kjøretøy som hastighetsberegningsformelen, dreiemomentberegningen osv. Så for en sykkel ville det være annerledes enn hva som ville være for en bil, og hvis vi ser på skalerbarhetsperspektivet, så legger du til en grunnleggende mal som bare har det ytre skjelettet av disse beregningsrelaterte metodene, og så har vi nettopp lagt til varianter av implementeringene i koden vår, og dermed laget en fleksibel design. Hvis du bare ser denne malen, vil en bruker få en ide om funksjonalitetene du tilbyr, og kan se frem i de relaterte klassene.

Scenario 2 -

Et annet tilfelle kan være å generere en felles mal for databaseklasser som du skal kalle i prosjektet, det kan hende du bruker Oracle, MySQL eller DB2, og sannsynligvis i forskjellige kodingsscenarier gleder du deg til å koble til dem i forskjellige tilfeller tid, så i malen kan du mate brukernavn, passord, få tilkoblings osv. egenskaper og de utvidende klassene vil gi implementeringsdetaljene når du søker.

En Java-utvikler vet hvordan man får implementert denne typen funksjonalitet !! Ja, en abstrakt klasse er et riktig svar, jeg håper du vet at når vi har scenarier der nært beslektede enheter skal settes inn i en løsning, så velger vi abstrakte klasser (i de tilfeller vil grensesnittene også løse vårt formål).

Implementering av mal i Java

1. Gjør baseklassen til abstrakt som inkluderer malmetodene og de abstrakte metodene også.

2. Malmetodene er av endelig karakter og vil ikke endres deretter.

3. De abstrakte metodene er nødvendige for å bli implementert via støtte av logistikk for virksomheten i implementeringsklassene.

4. Metoden kan gjøres abstrakt i barneklasser hvis den ikke bare må implementeres der.

5. Å ta vare på unntakshåndtering på en passende måte er også et viktig scenario.

6. Riktig valg på hva som må merkes abstrakt og hva som ikke skal være.

Metodene med karosserier i baseklassen er laget for å være av endelig type, da de ikke skal overstyres, som for beregning av kjøretøyklasse o / min kan gjøres den samme.

Nedenfor her har vi definert det java-malbaserte eksemplet, det inkluderer eksemplerimplementeringen av det samme -

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 bruke formørkelse eller andre online kompilasjonsplattformer for å sjekke denne implementeringen ved å bruke dine egne implementeringer.

Systemkrav før du koder

1. Java 8 skal fortrinnsvis installeres.

2. Systemvariabler skal være riktig konfigurert for JRE.

3. Det kreves også en IDE som formørkelse som automatisk sjekker syntaktiske feil.

4. Feilsøk bare med IDE.

5. Plug-ins for analyse av maldesign.

6. Tilknytningsverktøy for klassediagrammer for å kjenne forholdet til arv på høyere nivå mellom klassene laget av deg i malen designmønster implementering.

7. Alle Windows, Linux eller MAC vil gjøre oppgaven din.

Fordeler med mal i Java

  1. Hindrer kodeduplisering, ettersom de generelle tingene bare kan implementeres i den abstrakte klassen, og de nødvendige variasjonene kan implementeres i underklassene.
  2. Variable mønstre kan implementeres i underklasser basert på arveforholdet til implementeringen. Denne prosessen kalles metodeoverskridelse.
  3. Hovedmalen kan ha abstrakte og ikke-abstrakte metoder, noe som gjør implementeringen enklere og fleksibel.
  4. Lengden på koden forblir begrenset.
  5. Koden virker ren og effektiv.
  6. Lett å feilsøke, og dermed gjøre utviklerens levetid lett.

Bruk tilfeller

  1. Har en relasjon implementeringer.
  2. Databaseimplementeringer.
  3. Implementering av kjøretøyvarianter.
  4. Fruktinnsamling og implementering av vitamineffekter.
  5. Arbeidsflyt metode implementering.

Hva annet kan du utforske?

Er du klar over konseptene rundt grensesnittimplementeringer, med Java 8, som har nye funksjoner, kan du prøve grensesnittimplementeringen mot de avledede klassene som er nevnt over, og du kan prøve forskjellige forretningsscenarier, i versjoner av Java 8 og over, er du liberal til å overstyre abstrakte metoder for grensesnitt i implementeringsklassene, bør du se på dokumentasjonen som er presentert av Oracle for det samme.

Du bør også utforske andre designmønstre, ettersom de er viktige og forventede fra erfarne java-utviklere i hele bransjen.

Anbefalte artikler

Dette har vært en guide til Mal i Java. Her diskuterte vi konseptet, krav, brukt og fordel av mal i Java. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er designmønster i Java?
  2. Introduksjon til JavaScript
  3. Hvordan installere selen
  4. Hva er Cognos?
  5. Abstrakte klasser i JavaScript
  6. JRE vs JVM | Topp 8 forskjeller med (Infographics)