logo

Designmønstre i Java

Et design mønstre er velprøvd løsning for å løse det konkrete problemet/oppgaven.

Nå vil et spørsmål dukke opp i tankene dine, hva slags spesifikt problem? La meg forklare ved å ta et eksempel.

Problem gitt:
Anta at du vil lage en klasse som bare en enkelt forekomst (eller objekt) skal opprettes for, og det enkelt objektet kan brukes av alle andre klasser.

sorter en array java

Løsning:
Singleton designmønster er den beste løsningen på det spesifikke problemet ovenfor. Så hvert designmønster har noen spesifikasjoner eller sett med regler for å løse problemene. Hva er disse spesifikasjonene, vil du se senere i typene designmønstre.


Men husk én ting, designmønstre er programmeringsspråkuavhengige strategier for å løse de vanlige objektorienterte designproblemene. Det betyr at et designmønster representerer en idé, ikke en bestemt implementering.

Ved å bruke designmønstrene kan du gjøre koden din mer fleksibel, gjenbrukbar og vedlikeholdbar. Det er den viktigste delen fordi java internt følger designmønstre.

For å bli en profesjonell programvareutvikler må du kjenne til i det minste noen populære løsninger (dvs. designmønstre) på kodingsproblemene.

instansiert java

Fordel med designmønster:

  1. De er gjenbrukbare i flere prosjekter.
  2. De gir løsningene som er med på å definere systemarkitekturen.
  3. De fanger opp erfaringene innen programvareutvikling.
  4. De gir åpenhet til utformingen av en applikasjon.
  5. De er velprøvde og beviste løsninger siden de er bygget på kunnskapen og erfaringen til ekspertprogramvareutviklere.
  6. Designmønstre garanterer ikke en absolutt løsning på et problem. De gir klarhet i systemarkitekturen og muligheten for å bygge et bedre system.

Når skal vi bruke designmønstrene?

Vi må bruke designmønstrene under analyse- og kravfasen til SDLC (Programvareutvikling livssyklus).

Designmønstre letter analyse- og kravfasen til SDLC ved å gi informasjon basert på tidligere praktiske erfaringer.

Kategorisering av designmønstre:

I utgangspunktet er designmønstre kategorisert i to deler:

  1. Kjerne Java (eller JSE) designmønstre.
  2. JEE designmønstre.

Kjerne Java-designmønstre

I kjerne-java er det hovedsakelig tre typer designmønstre, som er videre delt inn i sine underdeler:

java arraylist sortert

1. Kreativt designmønster

  1. Fabrikkmønster
  2. Abstrakt fabrikkmønster
  3. Singleton mønster
  4. Prototype mønster
  5. Bygger mønster.

2. Strukturelt designmønster

  1. Adaptermønster
  2. Bromønster
  3. Sammensatt mønster
  4. Dekorasjonsmønster
  5. Fasade mønster
  6. Fluevekt mønster
  7. Proxy-mønster

3. Behavioral Design Pattern

  1. Ansvarskjedemønster
  2. Kommandomønster
  3. Tolkemønster
  4. Iterator mønster
  5. Mediator mønster
  6. Memento mønster
  7. Observatørmønster
  8. Statens mønster
  9. Strategimønster
  10. Malmønster
  11. Besøksmønster

Designmønsterindeks


Opplæring i designmønstre

1) Kreasjonsmønster

2) Strukturelt mønster

  • 2) Strukturelt mønster
  • Adaptermønster
  • Bromønster
  • Sammensatt mønster
  • Dekorasjonsmønster
  • Fasade mønster
  • Fluevekt mønster
  • proxy-mønster

3) Atferdsmønster

  • 3) Atferdsmønster
  • Ansvarskjede
  • Kommandomønster
  • Tolkemønster
  • Iterator mønster
  • Mediator mønster
  • Memento mønster
  • Observatørmønster
  • Statens mønster
  • Strategimønster
  • Malmønster

Vet du?

  • Christopher Alexander var den første personen som oppfant alle designmønstrene ovenfor i 1977.
  • Men senere Gang of Four - Designmønstre, elementer av gjenbrukbar objektorientert programvare boken ble skrevet av en gruppe på fire personer kalt Erich Gamma, Richard Helm, Ralph Johnson og John Vlissides i 1995.
  • Det er derfor alle de ovennevnte 23 designmønstrene er kjent som Gang of Four (GoF) designmønstre.