Está en la página 1de 9

Base De Datos

Orientada a objetos

NDICE
Qu es la Programacin Orientada a Objetos?...........................3 Caractersticas de la P.O.O4 Abstraccin....4 Encapsulacin..5 Herencia.5 Qu es una Clase?.........................................................................6 Qu es una Instancia?...................................................................7

Estados en objetos......7

Objetos en POO8

Mensajes en objetos...9 BIBLIOGRAFA..9

Qu es la Programacin Orientada a Objetos? La P.O.O. (tambin conocida como O.O.P., por sus siglas en ingls) es lo que se conoce como un paradigma o modelo de programacin. Esto significa que no es un lenguaje especfico, o una tecnologa, sino una forma de programar, una manera de plantearse la programacin. No es la nica (o necesariamente mejor o peor que otras), pero se ha constituido en una de las formas de programar ms populares e incluso muchos de los lenguajes que usamos hoy da lo soportan o estn diseados bajo ese modelo (PHP, AS2, AS3,). Lo que caracteriza a la POO es que intenta llevar al mundo del cdigo lo mismo que encontramos en El Mundo Real. Cuando miramos a nuestro alrededor qu vemos? pues, cosas, objetos, pero podemos reconocer estos objetos porque cada objeto pertenece a una clase, eso nos permite distinguir, por ejemplo, un perro de un auto (porque son de clases diferentes) y tambin un TV de otro (porque, aunque sean iguales, cada uno es un objeto distinto). ste es el modelo que la POO intenta seguir para estructurar un sistema. Es importante recalcar nuevamente que la POO no es un lenguaje de programacin, es una forma de enfrentarse a ella. Esto significa que la POO le servir para desarrollar en muchos de los lenguajes comunes de hoy en da (incluso en ASPuaj!) manteniendo un mismo esquema mental. Incluso le permitir enfrentar otros proyectos que no necesariamente estn relacionados con escribir cdigo

Caractersticas de la P.O.O. No hay un acuerdo aceptado por todo el mundo respecto a cules son las caractersticas que definen la POO, pero al menos todos concuerdan en estas tres: 1. Abstraccin. 2. Encapsulacin. 3. Herencia. Abstraccin Cada vez que pronunciamos una palabra, realmente lo que hacemos es asociar ese sonido (o ese conjunto de garabatos al escribir) con una serie de cosas. Decimos que un ave es tal cosa, que una silla es tal otra, etc. Cuando vamos a aplicar la POO, lo primero que debemos hacer es cumplir con una vieja mxima de guerra: Divide y Vencers. Es decir, lo que hacemos es seccionar nuestro cdigo en grupos de cdigo ms pequeo que, al unirlos, hacen el trabajo. Un buen ejemplo de abstraccin es el cuerpo humano, aunque el cuerpo es una unidad, est dividido en lo que conocemos por sistemas (el sistema respiratorio, el sistema linftico, cardiovascular, etc., etc.). Estos sistemas, a su vez estn compuestos por otros ms pequeos: los rganos, y as sucesivamente. La abstraccin nos permite dividir nuestro programa en distintos objetos que se agrupan para formar cosas ms complejas. Pero qu demonios es realmente la abstraccin? Bsicamente es la capacidad de separar los elementos (mentalmente) para poder verlos de forma singular. Como cuando describimos el cuerpo humano y decimos cabeza, brazo(s), pierna(s), etc.

Encapsulacin: Tambin conocida como ocultamiento. Cuando me acuesto a ver televisin no me preocupo del modo como ste funciona, o lo que hace para cambiar de canal o aumentar el volumen. A menos que seas experto en electrnica o tcnico en televisores, te pasar lo mismo: no lo sabes y no te importa; slo sabes que al presionar un botn ocurre la magia. La encapsulacin se encarga de mantener ocultos los procesos internos que necesita para hacer lo que sea que haga, dndole al programador acceso slo a lo que necesita. Esto da dos ventajas iniciales: Lo que hace el usuario puede ser controlado internamente (incluso sus errores), evitando que todo colapse por una intervencin indeseada La segunda ventaja es que, al hacer que la mayor parte del cdigo est oculto, puedes hacer cambios y/o mejoras sin que eso afecte el modo como los usuarios van a utilizar tu cdigo. Slo tienes que mantener igual la forma de acceder a l (en el caso del control de la tele, que los botones sigan siendo los mismos y que el botn de apagado no cambie el volumen). Por cierto, estas puertas de acceso que das a los usuarios son lo que se conoce como interfaz. Herencia: Uno de los elementos ms interesantes de la P.O.O. La herencia es la capacidad que tiene una clase de derivar las propiedades y mtodos de otra Tratemos de explicarlo con un ejemplo: Decimos que una gallina es un ave; esto quiere decir que las gallinas tienen caractersticas comunes con otras aves (pico, plumas, etc.), es decir que la gallina hereda las caractersticas comunes de todas las aves. Pero adems, resulta que un ave es un animal, lo que significa que tambin comparte caractersticas comunes al caballo, el perro, el hombre y cualquier otra cosa que pueda ser clasificada como animal. La herencia nos permite, entre otras cosas, evitar tener que escribir el mismo cdigo una y otra vez, puesto que al definir que una categora (que en programacin llamaremos clase) pertenece a otra, automticamente estamos atribuyndoles las caractersticas generales de la primera, sin tener que definirlas de nuevo.

Qu es una Clase? Cuando decimos ave, sabemos que nos referimos a algo con plumas, pico, dos patas, etc. No importa realmente si hemos visto un ave o no, o si tenemos un ave frente a nosotros; entendemos claramente que la palabra ave se refiere a alguna cosa que cumple con unas caractersticas especficas, se comporta de una forma concreta, etc, etc. No es ms que una palabra, pero nos permite clasificar las cosas. Por ejemplo, sabemos que una gallina es un ave y que un perro no es un ave. La clasificacin es algo que hacemos todos los das, a cada momento. Cada vez que decimos que algo es alguna cosa, estamos clasificndolo, asocindolo a una clase. Sin embargo, sabemos que la palabra ave no se refiere a un animal concreto, sino a una serie de animales. Ave es la palabra que usamos para identificarlos en un grupo, pero no podemos decir hoy har volar la palabra ave), en tal caso siempre nos referiremos a esta o aquella ave, siempre hablaremos de un animal concreto. La palabra es lo que conocemos como un concepto, una abstraccin. En la POO ocurre igual, una clase no es ms que una serie de cdigo que define a todos los elementos relacionados con ella. As, podramos escribir la clase ave colocando en ella todas las caractersticas que tienen las aves (pico, color, alto, ancho, patas,) esas caractersticas las llamaremos en lenguaje de programadores, propiedades. Pero la cosa no termina all, resulta que las aves tienen tambin ciertos mecanismos especficos, como comer, dormir, reproducirse, etc. Estos mecanismos los llamamos mtodos. Por ltimo, tambin sabemos que las aves reaccionan ante ciertos sucesos, como peligro, atraccin, defensa A esto lo llamaremos eventos. Entonces, vemos que una clase es algo as como el concepto de lo que queremos hacer, es como la idea (concebida al detalle) de la cosa, del objeto; pero igual que con las ideas, no puedo hacer nada directamente con una clase (puedes sentarte en una silla, pero no en tu idea de una silla). Sin embargo, esta idea ser la que d forma al objeto que crearemos (que tendr las caractersticas, mecanismos y comportamientos que habamos pensado en nuestra idea).

Qu es una Instancia? Bien, decamos que una clase es como la definicin de un objeto, pero no es el objeto en s, del modo como una idea no es una cosa fsica (el ejemplo de la silla). As que para sentarnos necesitaremos convertir esa idea en algo, en un objeto real; a ese objeto lo llamamos instancia. En un mismo proyecto puedo tener una o ms instancias de una misma clase sin problemas. Cada vez que creamos una nueva instancia, sta adquiere las propiedades, mtodos y eventos de la clase a la que pertenece, sin embargo, cada instancia es independiente de las otras; esto nos da dos ventajas: 1. Si hago algn cambio en la clase, todas las instancias de esta clase se actualizarn automticamente; esto nos permite hacer cambios sin tener que ir a cada una de las instancias (se aplica el mismo principio de herencia, aunque a un nivel diferente). 2. Al ser independientes de las otras instancias, puedo darles valores diferentes sin que afecten a las dems (como tener una silla negra, una roja, una ms alta, etc.). Aunque comparten la misma estructura, pueden programarse individualmente, dando versatilidad y flexibilidad al cdigo.

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. Esta accin de crear un objeto a partir de una clase se llama instanciar (que viene de una mala traduccin de la palabra instace que en ingls significa ejemplar). Por ejemplo, un objeto de la clase fraccin es por ejemplo 3/5. El concepto o definicin de fraccin sera la clase, pero cuando ya estamos hablando de una fraccin en concreto 4/7, 8/1000 o cualquier otra, la llamamos objeto. Para crear un objeto se tiene que escribir una instruccin especial que puede ser distinta dependiendo el lenguaje de programacin 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 continuacin. Dentro de los parntesis podramos colocar parmetros con los que inicializar el objeto de la clase coche. 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 asignacin.

Mensajes en objetos Un mensaje en un objeto es la accin de efectuar una llamada a un mtodo. Por ejemplo, cuando le decimos a un objeto coche que se ponga en marcha estamos pasndole el mensaje ponte en marcha. Para mandar mensajes a los objetos utilizamos el operador punto, seguido del mtodo que deseamos invocar. miCoche.ponerseEnMarcha() En este ejemplo pasamos el mensaje ponerseEnMarcha(). Hay que colocar parntesis igual que cualquier llamada a una funcin, dentro iran los parmetros. Hay mucho todava que conocer de la POO ya que slo hemos hecho referencia a las cosas ms bsicas. Tambin existen mecanismos como la herencia y el polimorfismo que son unas de las posibilidades ms potentes de la POO. La herencia sirve para crear objetos que incorporen propiedades y mtodos de otros objetos. As podremos construir unos objetos a partir de otros sin tener que reescribirlo todo. El polimorfismo sirve para que no tengamos que preocuparnos sobre lo que estamos trabajando, y abstraernos para definir un cdigo que sea compatible con objetos de varios tipos. Son conceptos avanzados que cuesta explicar en las lneas de ese informe. No hay que olvidar que existen libros enteros dedicados a la POO y aqu solo pretendemos dar un repaso a algunas cosas para que os suenen cuando tengis que poneros delante de ellas en los lenguajes de programacin que debe conocer un desarrollador del web.

http://www.desarrolloweb.com/articulos/499.php http://thefricky.wordpress.com/poo/

También podría gustarte