É um paradigma para o desenvolvimento de software que se baseia na utilização de
componentes individuais que colaboram entre si para construir sistemas mais complexos em que a
colaboração entre os objetos é feita através do envio de mensagens. Baseia-se em conceitos como
objetos, abstração, entidades, classes, herança, polimorfismo, etc. A que paradigma de programação
esse trecho se refere?