Mønster er en malmetode, et eksempel. Det er enhver struktur, idé eller konsept som brukes gjentatte ganger i en større kontekst. De fleste mønstre er gode eksempler på å lage systemer som kan løse ulike problemer. De forenkler opprettelse, vedlikehold, testing, utvikling og feilsøking av en rekke programvaresystemer. Mønstre er effektive verktøy for å håndtere de subtile og noen ganger subtile problemene og feilene som er uunngåelige i store programvareprosjekter. Noen programmerere starter med å lære mønstre fordi de er nyttige, andre fordi de gjør koden lesbar. I tillegg øker læringsmønstre prosjektutvikling og bidrar til å skape mer skalerbare og pålitelige systemer.
I denne artikkelen vil vi se på et av de viktigste og mest brukte designmønstrene: MVC (Model–View–Controller) mønsteret