Curiosidades en dosporcuatro
 
Home Artículos Foto Historias  

Programacion Orientada a objetos I

30 Oct 2006

visto 1875 veces

rating 4.75
4 votos


Este articulo será el primero de una serie que describirá, de un modo general, en que consiste el paradigma de la programación orientada a objetos.

Desde hace tiempo, la programación orientada a objetos (POO), que no es mas que un modo de programar, esta obteniendo un papel cada vez mas importante, en el desarrollo del software. Aplicaciones mas solidas, rápidas y fiables son posibles hoy gracias a la POO. Aunque cuidado, es relativamente sencillo, si no se sigue un orden, perderse.

Os muestro lo que será un indice de los temas que trataremos:

  1. Objetos en vez de un conjunto disperso de funciones y variables.
  2. Que son las clases
  3. Instanciando un objeto

Objetos en vez de un conjunto disperso de funciones y variables

La POO da lugar a un nuevo modo de ver la programacion, entendida en el pasado como programación estructurada, donde variables, funciones y llamadas a estas, "convivian" en un entorno, para la realización de un fin - aplicacion -.

Podriamos decir que eran "entidades propias e independientes".

Con POO, estas pasan a formar parte de una entidad indivisible llamada objeto.

Las funciones que un objeto puede realizar, se representan como metodos de un objeto, y aquellas variables que podamos asociar al objeto de una manera logica, podriamos denominarlas propiedades.

Por ejemplo:

Imaginemos que tenemos este conjunto de funciones:

- Correr()

- Comer()

- Respirar()

- Pensar()

Parece sencillo pensar que todas estas acciones son realizables por un ser humano, verdad? Ya que un ser humano corre, respira, come y piensa - bueno algunos mas que otros :-) -

Bien, dado este ejemplo, podriamos crear un objeto de tipo Persona cuyos métodos (funciones) serian los anteriormente nombrados.

Os estareis preguntando, y como mantengo el estado de la persona, es decir, que es lo que puede establecer la diferencia entre una persona y otra. Aqui es donde entran en juego lo que llamamos propiedades de un objeto. Nosotros sabemos que no existen dos personas iguales, pero cuidado, pueden existir dos objetos iguales. Pondré un ejemplo de esto mas adelante.

Como propiedades del ejemplo anterior podríamos nombrar:

- Nombre

- DNI

- Peso

Como veis, estas propiedades son muy parecidas a lo que en programación estructurada llamabamos variables. Estas propiedades, hacen que, en este caso, mis objetos de tipo persona sean distintos, ya que cada uno tiene un DNI diferente. Y podemos observar tambien que el metodo Correr y Comer, seguramente influirian en el peso de dicha persona. Como veis los valores de dichas propiedades podrian ser modificadas en cada uno de los metodos que hemos nombrado.

Otro ejemplo podria ser el objeto coche, cuyos metodos podrian ser girar, acelerar, frenar, etc... y cuyas propiedades podrian ser marca, modelo, etc...

De esta forma un objeto esta compuesto de propiedades y métodos. Y este comienza su ciclo de vida dentro de una aplicación, es creado en un momento determinado (no tiene porque ser al iniciar el programa).  En el momento de su creación tiene su propia identidad, y un estado inicial.

Que son las clases

Las clases constituyen el modo en el que definimos los objetos durante el proceso de desarrollo de una aplicación. Un objeto es una instancia de una clase, es decir su representación software. He aqui un ejemplo de clase (sin usar ningun lenguaje de programación especifico):

Hemos creado una clase persona, con una propiedad llamada peso, y en la que influyen los metodos correr (quita peso) y comer (añade peso).

clase Persona

{

       Peso;

       Persona (_peso)

       {

           Peso=_peso;

       }

       Correr(minutos)

       {

           Pesoaquitar=minutos*(1/40)

           Peso=Peso-Pesoaquitar

       }

       Comer(calorias)

       {

         Pesoaponer=calorias*0.001

         Peso=Peso+Pesoaponer

       }

}

Como veis, existe un metodo llamado Persona. Es lo que se llama un metodo de tipo Constructor, y es el encargado de inicializar el objeto.

Instanciando un objeto

Para instanciar un objeto, lo hariamos de la siguiente forma:

Persona persona1=new Persona(80) //estariamos creando una persona con 80 kilos

persona1.Correr(20) //estariamos haciendo correr a la persona 20 minutos, con lo que perderia peso

persona1.Comer(1500)//estariamos haciendo comer a la persona 1500 calorias, con lo que recuperaria peso.

Si bien es cierto que en programacion estructurada, directamente habriamos creado una variable llamada peso, y habriamos llamado a las funciones Correr y comer pasandoles el peso y los minutos, o el peso y la cantidad de calorias.

Este modo de trabajo pretende organizar las actividades en grupos logicos (entidades). De este modo la programación se hace de un modo mas modular y es mas escalable, ya que si quisiesemos añadir una funcion a la clase Persona, bastaria con añadirla y programarla. En programacion estructurada, al no haber entidades logicas diferenciadas resulta mas desorganizado el código y por tanto, se hace mas farragoso el hecho de añadir codigo extra.


Tags: objetos oop poo programacion

Autor: dotnetdeveloper

Publicar en:  Yahoo! MyWeb   Meneame   Fresqui   del.icio.us

Votar: Debes estar registrado para votar




Comentarios


Nombre 
 

Email 
(no será publicado)

Tu página web 
(opcional)



31 Oct 2006

AnaBaulop

Espero una segunda parte y una tercera... Muy bueno compi! :)

06 Nov 2007

pamchi

Tengo una duda, por ejemplo que yo quiero creear n objetos, como hago para poder nombrarlos de forma distinta en tiempo de ejecución?

Es decir, puedo obtener el nombre de una persona desde un texbox y luego agarrar ese nombre para crear el objeto persona?


Dosporcuatro está formado por contenidos proporcionados por los usuarios. Cada nota o foto es añadido y votado por personas como tú.

Bienvenido a dosporcuatro, aqui podrás encontrar curiosidades de cine, publicidad, juegos, photoshop, internet, artículos interesantes, blogs, consolas...

Leer más




Suscríbete





sugerencias | aviso legal | acerca de | rss

Licencia Creative Commons El contenido de este sitio está bajo una licencia de Creative Commons.

Curiosidades, tutoriales, conocimientos y miscelánea.

Bienvenido a dosporcuatro, aquí podrás encontrar curiosidades de cine, curiosidades de publicidad, curiosidades sobre juegos, curiosidades de photoshop, curiosidades de internet, webs curiosas, curiosidades y humor, articulos interesantes y curiosidades de consolas xbox, ps3, wii y psp.


Curiosidades | tutoriales photoshop | learning online | tutoriales | Diseño y desarrollo web | Intercambio de juegos usados | guia de empresas

Valid HTML 4.01 Transitional   [Valid RSS]