Inom Software Development är Design Patterns, eller designmönster, tänkt som generella och återanvändningsbara lösningar på vanligt återkommande problem. Det är ingen färdig design som direkt kan implementeras i kod, utan ska ses som en beskrivning eller mall på hur ett problem kan lösas.
Objekt-orienterade designmönster, alltså där vår värld kretsar kring klasser och objekt, visar allt som oftast en relation och interaktion mellan klasser eller objekt.
Vi delar upp designmönster i 3 kategorier:
Creational Patterns, Structural Patterns och Behavioral Patterns.
Föga förvånande så handlar Creational Patterns om att skapa objekt, eller "create objects in a manner suitable to the situation".
Förenklar designen genom att identifiera enkla sätt att skapa relationer mellan enheter.
Identifierar kommunikationsmönster mellan objekt.