Objekgeoriënteerde programmering (OOP) is 'n paradigma of verwysingsraamwerk in rekenaarwetenskap waarvolgens sagtewarekomponente as 'n stel voorwerpe (objekte) gemodelleer word wat interaktief (reageer met mekaar) is. Dit word gewoonlik geïmplementeer deur gebruik te maak van 'n objekgeoriënteerde programmeertaal. Voor OOP-tale ontwikkel is, was meeste programmeertale prosedureel (bv. die taal C). In prosedurele tale lê die klem op aksies (funksies) wat take kan verrig deur data te verwerk. Data en aksie is geskei. Hierdie benadering bemoeilik die ontwikkeling van sagteware omdat daar nie oor entiteite wat met mekaar kan reageer gedink kan word nie, maar eerder in terme van data en die aksies wat hierop uitgevoer kan word. OOP voer egter aan dat die data en funksiedeel van dieselfde eenheid of objek moet wees. Sleutelbegrippe in objek-oriëntasie: Abstraksie (Abstraction) Oorerwing (Inheritance) Enkapsulerig (Encapsulation) Polimorfisme (Polymorphism) Die eerste OOP-taal is in 1966 deur Ole-Johan Dahl en Kristen Nygaard van die Norwegian Computing Center geskep. Simula is hoofsaaklik gebruik om rekenaarsimulasies te skep, bv. hoe aansteeklike siektes oor 'n gebied versprei of hoe lugverkeer 'n blokkade oor 'n lughawe mag skep.