Programacion Orientada a Objetos

La programación orientada a objetos o POO es un paradigma de programación, es decir un enfoque particular o filosofía para la construcción del software, que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.

OBJETO

"un objeto se define como la unidad que en tiempo de ejecución realiza las tareas de un programa. También a un nivel más básico se define como la instancia de una clase.  

Estos objetos interactúan unos con otros, en contraposición a la visión tradicional en la cual un programa es una colección de subrutinas (funciones o procedimientos), o simplemente una lista de instrucciones para el computador. Cada objeto es capaz de recibir mensajes, procesar datos y enviar mensajes a otros objetos de manera similar a un servicio."
(tomado de http://es.wikipedia.org/wiki/Objetos_%28programaci%C3%B3n_orientada_a_objetos%29)

Dentro de la programación podemos analizar los objetos como cada parte del programa, un objeto puede estar compuesto de mas objetos o de igual forma pueden componer un objeto (Macrocosmos y Microcosmos), basandonos en este concepto, cada parte de un programa sera un objeto que juntos hacen un gran programa. Por ejemplo la calculadora de Windows esta compuesta por botones, cada uno de ellos es un objeto que esta conformado por mas de ellos y entre todos forman un objeto llamado calculadora.


Todos los objetos se dividen en tres partes: un nombre que lo identifica, unas caracteristicas y unas acciones (en la vida real), en programacion los objetos tienen estos mismos componentes, es decir tienen un nombre que los identifica que se llama instancia, unas caracteristicas que se llaman propiedades o atributos, y unas acciones que se llaman metodos. y se denominan en conjunto clases.

Varias clases pueden conformar un programa y para demarcarlo de una forma grafica se puede utilizar UML (Lenguaje unificado de modelado), con su diagrama de clases.