Kapselointi
Kapselointi tarkoittaa ohjelmoinnissa yhteen kuuluvien tietojen ja toimintojen kokoamista yhdeksi kokonaisuudeksi. Olio-ohjelmoinnissa kapselointi tapahtuu usein kokoamalla muuttujat ja metodit luokaksi. Myös moduulit ja pakkaukset toimivat kapselointivälineinä.
Kapseloinnin tarkoituksena on useimmiten yhteenkuuluvien asioden kokoamisen lisäksi myös piilottaa toteutus moduulin tai luokan asiakkailta eli sen käyttäjiltä. Tarkoitus on siis tarjota käyttöön eräänlainen valmis ohjelmoinnin rakennuspalikka, jota voi käyttää ohjelman rakentamiseen tietämättä mitään (ja välittämättä) palikan sisäisestä toteutuksesta. Tämä edellyttää sitä, että moduulin tai luokan rajapinta on hyvin määritelty ja dokumentoitu.
Syitä kapseloinnin käyttämiseen ovat mm.
- Ohjelman jakaminen pienempiin, helpommin toteutettaviin ja hallittaviin osiin
- Ohjelman ylläpidon helpottaminen, koska muutokset vaikuttavat vain rajoitettuun alueeseen ohjelmassa rajapinnan säilyessä samana.
- Uudelleenkäytettävyyden helpottuminen. Kun rakennuspalikka on tehty oikein, sitä voidaan käyttää myös muissa ohjelmissa.