PORGRAMACION BASADA A OBJETOS
La programación orientada a objetos es un paradigma que utiliza objetos como elementos fundamentales en la construcción de la solución. Surge en los años 70. Un objeto es una abstracción de algún hecho o ente del mundo real que tiene atributos que representan sus características o propiedades y métodos que representan su comportamiento o acciones querealizan. Todas las propiedades y métodos comunes a los objetos se encapsulan o se agrupan en clases. Una clase es una plantilla o un prototipo para crear objetos; por eso se dice que los objetos son instancias de clases.
¿QUES ES UN OBJETO?
En el paradigma de programación orientada a objetos (POO, o bien OOP en inglés), un objeto se define como la unidad que en tiempo de ejecución realiza lastareas 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 mensajesa otros objetos de manera similar a un servicio.
En el mundo de la programación orientada a objetos (POO), un objeto es el resultado de la instanciación de una clase. Una clase es el anteproyecto que ofrece la funcionalidad en ella definida, pero ésta queda implementada sólo al crear una instancia de la clase, en la forma de un objeto. Por ejemplo: dado un plano para construir sillas (una clasede nombre clase_silla), entonces una silla concreta, en la que podemos sentarnos, construida a partir de este plano, sería un objeto de clase_silla. Es posible crear (construir) múltiples objetos (sillas) utilizando la definición de la clase (plano) anterior.
¿Qué es una clase?
Una clase es una construcción que se utiliza como un modelo (o plantilla) para crear objetos de ese tipo. El modelodescribe el estado y el comportamiento que todos los objetos de la clase comparten. Un objeto de una determinada clase se denomina una instancia de la clase. La clase que contiene (y se utilizó para crear) esa instancia se puede considerar como del tipo de ese objeto, por ejemplo, una instancia del objeto de la clase "Persona" sería del tipo "Persona".
Una clase por lo general representa unsustantivo, como una persona, lugar o (posiblemente bastante abstracta) cosa - es el modelo de un concepto dentro de un programa de computadora. Fundamentalmente, encapsula el estado y el comportamiento del concepto que representa. Encapsula el estado a través de marcadores de datos llamados atributos (o variables miembro o variables de instancia), y encapsula el comportamiento a través de secciones decódigo reutilizables llamados métodos.
Clases Dinámicas
En oposición a las clases cerradas existe lo que se conoce como clases dinámicas. Su principal característica es que permiten agregar en tiempo de ejecución, propiedades y métodos a la clase, es decir, que yo puedo agregar una nueva propiedad a la instancia de mi clase, aunque ésta no haya sido definida originalmente.
Clases Estáticas
Porsu parte, las clases estáticas están pensadas para contener elementos (propiedades o métodos) que no dependen directamente de un objeto para su funcionamiento ¿Cómo es eso? Veamos:
En varias ocasiones nos encontramos con que tenemos una función que puede ser utilizada por distintos objetos, o en diferentes situaciones, que no están relacionadas con algún objeto específico, puede ser el caso deuna operación matemática, un cálculo, dibujar una forma geométrica, etc. Sin las clases estáticas la opción sería: Crear esta misma función en cada clase que utilizamos (copiar y pegar no es reusabilidad). Pero esto es algo engorroso y poco práctico (¿qué pasa si queremos agregar un nuevo parámetro a nuestra función o conseguimos una forma más efectiva de hacer lo mismo? Tendríamos que reescribir...
Regístrate para leer el documento completo.