Programacion o a o

Solo disponible en BuenasTareas
  • Páginas : 8 (1995 palabras )
  • Descarga(s) : 57
  • Publicado : 10 de julio de 2009
Leer documento completo
Vista previa del texto
¿Qué es y para qué sirve la programación orientada a objetos?

Cualquiera que haya programado un poco se dará cuenta de la importancia que tiene para el programador la dichosa documentación. Documentación que le sirve tanto a él como a otras personas (todavía no he conocido a uno al que le guste realizar tan atractiva labor).

Pero la cosa no se queda ahí, además sin una buena documentaciónun programador pierde el tiempo en hacer rutinas o procedimientos que ya estaban hechos con anterioridad y que posiblemente él mismo hizo. También una aplicación con mala documentación es muy difícil de depurar y de corregir errores posteriores a su implementación.

¿ y qué tiene esto que ver con la programación orientada a objetos ?

Este tipo de programación consiste en agrupar en"objetos" aquel código, rutinas, procedimientos, etc, que tengan cosas en común, de forma que cuando un programador las utilice sepa dónde encontrarlas. Un "nuevo" concepto (entre comillas porque en realidad no es nuevo, pero bueno) que incluye la generación de aplicaciones "autodocumentadas". Una vez generado o construido un objeto el programador, y los que vengan detrás, podrán olvidarse por completodel objeto y sencillamente utilizarlo, al igual que hacemos con los textbox, commands, grids, etc.

Argumentos a favor de la POO:

Imaginemos que queremos utilizar ventanas en nuestro proyecto.

Queremos que estas ventanas puedan hacer dos cosas, abrirse y cerrarse. Además una ventana deberá tener una propiedad llamada "estado" que nos indique si está abierta o cerrada.

Con VisualBasic, sin utilizar la potencia de la POO escribiríamos algo parecido a esto:

Sub Abrir()

estado = 1 'Abrimos la ventana

End Sub

Sub Cerrar()

estado = 0 'Cerramos la ventana

End Sub

Si ahora otra persona, o incluso el mismo programador dentro de un mes, se pone a leer esto, estaréis de acuerdo conmigo en que no entenderá nada. No sabe qué es lo que abre ni lo que cierra ¿Cómose va a dar cuenta de que está manipulando una ventana?

Pero eso no es todo. ¿Qué sucede si desea crear varias ventanas? ¿Cómo distingue unas de otras? ¿Definiendo más variables, como por ejemplo: estado1, estado2, etc?

¡Menudo lío! ¡Y estamos hablando de una simple ventana con una propiedad y dos métodos!

Hombre, exagero un poco, seguramente el programador haría algo así:

SubAbrir (index as integer)

estado(index) = 0 'Abrimos la ventana número index

End Sub

Sub Cerrar (index as integer)

estado(index) = 1 'Cerramos la ventana index

End Sub

Es posible que haga esto, que se construya un Array de ventanas con sus correspondiente variables de estado.

La POO nos ofrece la posibilidad de una vez definida una clase (en este caso la clase ventana) podercrear tantas instancias (objetos) de esa clase como necesitemos y dotarlas de un nombre propio.

¿ Cómo se crea una clase ?

Una clase se puede crear utilizando un módulo de clase "class module".

Para crear un objeto, previamente hay que crear una clase. Una clase define los métodos de los objetos y sus propiedades.

Vamos con un ejemplo:

Abrir un nuevo proyecto

En el menúInsertar seleccionar "módulo de clase". Aparecerá en la ventana de nuestro proyecto el nuevo archivo Class1.

Analicemos el nuevo archivo:

Para poder acceder a sus propiedades seguramente no te baste con seleccionarlo en la ventana del proyecto y pulsar F4 sino que tendrás que abrirlo haciendo doble Click sobre él y posteriormente pulsar F4.

Al hacer esto observamos que tiene trespropiedades:

Propiedad "Instancing". Nos indica, en caso de que queramos hacer pública la clase (ya explicaremos esto) si podremos crear cero, una o n instancias de la clase (objetos). De momento poner Not Creatable.

Propiedad "Name". Con esta propiedad damos nombre a la clase que queremos crear. En nuestro ejemplo el nombre más apropiado sería "ventana".

Propiedad "Public". Como ya intuís...
tracking img