La programación estructurada se divide en bloques y permite reutilizar código mediante secuencia, selección e iteración, mientras que la programación orientada a objetos encapsula estado y opciones en objetos que se comunican mediante mensajes. La programación orientada a objetos es más moderna y evolucionada, resolviendo problemas identificando actores y sus acciones para crear objetos compuestos de clases que detallan acciones y propiedades e interactúan entre sí, incorporando también polimorfismo y envío de mensajes.