sábado, 20 de noviembre de 2010

Lenguajes de Programación - Programación Orientada a Objetos

La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como expresaríamos las cosas en la vida real que otros tipos de programación.
Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en términos de objetos, propiedades, métodos y otras cosas que veremos rápidamente para aclarar conceptos y dar una pequeña base que permita soltarnos un poco con este tipo de programación. 

Clases en POO
Las clases son declaraciones de objetos, también se podrían definir como abstracciones de objetos. Esto quiere decir que la definición de un objeto es la clase. Cuando programamos un objeto y definimos sus características y funcionalidades en realidad lo que estamos haciendo es programar una clase. 
 
Propiedades en clases
Las propiedades o atributos son las características de los objetos. Cuando definimos una propiedad normalmente especificamos su nombre y su tipo. con los objetos.
 
Métodos en las clases
Son las funcionalidades asociadas a los objetos. Cuando estamos programando las clases las llamamos métodos. Los métodos son como funciones que están asociadas a un objeto.  


 
Objetos en POO
Los objetos son ejemplares de una clase cualquiera. Cuando creamos un ejemplar tenemos que especificar la clase a partir de la cual se creará. Para crear un objeto se tiene que escribir una instrucción especial que puede ser distinta dependiendo el lenguaje de programación que se emplee, pero será algo parecido a esto:
miCoche = new Coche() .
Con la palabra new especificamos que se tiene que crear una instancia de la clase que sigue a continuación. Dentro de los paréntesis podríamos colocar parámetros con los que inicializar el objeto de la clase coche. 

Mensajes en objetos
Un mensaje en un objeto es la acción de efectuar una llamada a un método. Por ejemplo, cuando le decimos a un objeto coche que se ponga en marcha estamos pasándole el mensaje “ponte en marcha”.
Para mandar mensajes a los objetos utilizamos el operador punto, seguido del método que deseamos invocar.
miCoche.ponerseEnMarcha()
En este ejemplo pasamos el mensaje ponerseEnMarcha(). Hay que colocar paréntesis igual que cualquier llamada a una función, dentro irían los parámetros. 

Estados en objetos
Cuando tenemos un objeto sus propiedades toman valores. Por ejemplo, cuando tenemos un coche la propiedad color tomará un valor en concreto, como por ejemplo rojo o gris metalizado. El valor concreto de una propiedad de un objeto se llama estado.
Para acceder a un estado de un objeto para ver su valor o cambiarlo se utiliza el operador punto.
miCoche.color = rojo
El objeto es miCoche, luego colocamos el operador punto y por último el nombre e la propiedad a la que deseamos acceder. En este ejemplo estamos cambiando el valor del estado de la propiedad del objeto a rojo con una simple asignación. 


Ejemplos:

-JAVA
hola mundo   



C++
Dos programas sencillos:
1.-Suma de dos enteros

 

EJECUCIÓN



2.- El volumen de un cubo


EJECUCIÓN







SALUDOS!!

4 comentarios:

  1. Hola compañero esta muy bien tu entrada los conceptos los explicaste bien ;) pero hay un pequeño detalle en tus programas no muestras exactamente el esquema de la programacion orientada a objetos, es decir no definiste alguna clase que de ahi deriven varios objetos y que interacutuen entre si ;) acuerdate que ese es el esquema de la programacion orientada a objetos. Yo te sugeriria que hagas un programa aunque sea sencillito donde definas una clase y de ahi se deriven objetos que interactuen entre si ;) por ejemplo no se, que escribas una clase a la que llames "humanos" y que se deriven objetos que las llamaremos "personas" y que estos objetos interactuen ;) es un simple sugerencia compañero :D

    ResponderEliminar
  2. Como bien comenta mi compañero Guillermo los programas, los de C++ no son OO si no mas bien son imperativos, si recuerdas los programas que vimos en clase ponimos una defincion, implementacion y el main con clases.

    Otra cosa esque utilizas la libreria windows.h que no es estandar por lo tanto tu programa no es portable para linux

    ResponderEliminar
  3. gracias por sus comentarios compañeros!!

    ResponderEliminar