Designmønster
Designmønster repræsenterer en model eller et eksempel på den korrekte løsning af en almindelig opgave i softwareudvikling.
Fordelen ved at bruge et designmønster er reduktion af arbejdsprocessens kompleksitet, da det forkorter tiden for kodeskrivning. Alle mønstre har allerede foruddefinerede navne, hvilket også letter samarbejdet mellem udviklere.
Blandt ulemperne kan nævnes, at udviklere fristes til at anvende det valgte mønster, selvom ikke alle dets funktioner er nødvendige for det produkt, der implementeres.
Der findes hovedtyper af designmønstre:
- Delegeringsmønster (Delegation pattern) overfører ansvaret for udførelsen af sin adfærd til et tilknyttet objekt.
- Funktionelt designmønster (Functional design) sikrer for hver modul en specifik funktion, der udføres med minimal bivirkning for andre moduler.
- Uforanderligt interface (Immutable interface) skaber et uforanderligt objekt.
- Interface (Interface) sikrer strukturering af programmer for at gøre dem lettere at forstå.
- Markøroverflade (Marker interface) anvendes til at markere tilstedeværelse eller fravær af implementering af en attribut eller annotation.
- Egenskabscontainer (Property container) tilføjer yderligere egenskaber til en intern container i klassen i stedet for blot at udvide klassen med nye egenskaber.
- Hændelseskanal (Event channel) opretter en kanal, hvorigennem beskeder sendes i mønsteret udgiver - abonnent. Til dette formål har dette mønster et repræsentationsobjekt, som ikke er hverken udgiver eller abonnent, men kun sikrer deres forbindelse.
Se også
-
mønsteret antimønster,
som definerer en forkert løsning af en opgave -
sæt af koncepter Programmeringsparadigme,
som definerer tilgangen til programmering -
teknik
planning-poker,
som er designet til at vurdere omfang og kompleksitet af opgaver -
diagram opgaveforbrændingsdiagram,
som anvendes til grafisk repræsentation af arbejdsmængden