Objektově orientované programování (OOP) je způsob psaní počítačových programů, který využívá myšlenku "objektů" k reprezentaci dat a metod. Obvykle byly počítačové programy jen seznamem instrukcí pro počítač, které mu říkaly, aby určitým způsobem provedl určité věci, což se nazývá procedurální programování. V objektově orientovaném programování však počítačové programy využívají objekty, které spolu komunikují, a mění data v těchto objektech, aby fungovaly způsobem, který si uživatel přeje. Díky způsobu, jakým je objektově orientované programování navrženo, pomáhá vývojáři také tím, že umožňuje snadné opakované použití kódu v jiných částech programu nebo dokonce jinými lidmi.

Většina programovacích jazyků je směsicí různých typů způsobů zápisu počítačových programů. Například jazyk Python umožňuje psát počítačové programy jak v objektově orientovaném, tak v procedurálním programování. Existuje mnoho programovacích jazyků, které umožňují psát počítačové programy v OOP, Některé z těchto programovacích jazyků jsou např: C++, Java, Ruby, Perl, Emarald, Sapphire, PHP, Python atd.