informasjonshiding
Informasjonshiding er et prinsipp innen programvareutvikling som innebærer at en komponent eksponerer bare det som er nødvendig for andre deler av systemet, mens implementasjonsdetaljene holdes skjult. Dette bidrar til å redusere kompleksitet, dempe avhengigheter og gjøre det lettere å endre og vedlikeholde programvaren over tid.
Opprinnelsen til begrepet hører hjemme i modulær design, og ble blant annet formulert av David Parnas i
Hvordan informasjonshiding oppnås, skjer ofte gjennom innkapsling og abstraksjon. I objektorienterte språk gjøres dette vanlig via
Fordeler med informasjonshiding inkluderer redusert kobling mellom komponenter, bedre mulighet for å endre intern implementasjon uten
Ulemper kan være at overdreven innkapsling fører til unødvendig kompleksitet eller ekstra indirection, noe som kan
Eksempler på informasjonshiding inkluderer en klasse som har private felt og offentlige metoder eller et bibliotek
I praksis står informasjonshiding sentralt i modulær design og API-utvikling, og den kobler til begreper som