A programação orientada a objetos planeja um software ao redor de objetos ao invés de funções ou lógica. Ela é indicada para programas que são complexos, e de manutenção difícil a longo prazo. Python e Java usam esse modelo. POO possui 4 princípios fundamentais (abstração, polimorfismo, herança e encapsulamento) além de se estruturar em classes, objetos, métodos e atributos.