Programacion orientada a objetos

Solo disponible en BuenasTareas
  • Páginas : 15 (3579 palabras )
  • Descarga(s) : 7
  • Publicado : 18 de octubre de 2009
Leer documento completo
Vista previa del texto
Introducción a la Programación Orientada a Objetos
Luis R. Izquierdo

1 IMPORTANTE NOTA PRELIMINAR
Este documento es un apéndice de mi proyecto fin de carrera. Lo escribí después de leer tres o cuatro libros sobre el tema y consultar algunas páginas de Internet. Lo cierto es que, sinceramente, no recuerdo las fuentes que utilicé, así que me temo que, por mucho que me gustaría, me es imposiblecitarlas. No obstante, los conceptos que se presentan en este documento pueden encontrarse en cualquier libro de programación orientada a objetos, con definiciones probablemente mucho más rigurosas que las que yo aquí presento. Dejo este documento de forma libre en la red con la esperanza de que pueda ser útil, y sin ningún ánimo de atribuirme méritos que no me corresponden. Mi única intención esque, leyendo este breve documento, el lector pueda aprender los conceptos básicos de la programación orientada a objetos y disfrutar al mismo tiempo.

2 INTRODUCCIÓN
Es importante aclarar desde un principio la diferencia que existe entre programación orientada a objetos y un lenguaje orientado a objetos.

La programación orientada a objetos es una “filosofía”, un modelo de programación, consu teoría y su metodología, que conviene conocer y estudiar antes de nada. Un lenguaje orientado a objetos es un lenguaje de programación que permite el diseño de aplicaciones orientadas a objetos. Dicho esto, lo normal es que toda persona que vaya a desarrollar aplicaciones orientadas a objetos aprenda primero la “filosofía” (o adquiera la forma de pensar) y después el lenguaje, porque“filosofía” sólo hay una y lenguajes muchos. En este documento veremos brevemente los conceptos básicos de la programación orientada a objetos desde un punto de vista global, sin particularizar para ningún lenguaje de programación específico.

1

3 UNA FORMA NUEVA DE PENSAR
Es muy importante destacar que cuando hacemos referencia a la programación orientada a objetos no estamos hablando de unas cuantascaracterísticas nuevas añadidas a un lenguaje de programación. Estamos hablando de una nueva forma de pensar acerca del proceso de descomposición de problemas y de desarrollo de soluciones de programación.

La programación orientada a objetos surge en la historia como un intento para dominar la complejidad que, de forma innata, posee el software. Tradicionalmente, la forma de enfrentarse a estacomplejidad ha sido empleando lo que llamamos programación estructurada, que consiste en descomponer el problema objeto de resolución en subproblemas y más subproblemas hasta llegar a acciones muy simples y fáciles de codificar. Se trata de descomponer el problema en acciones, en verbos. En el ejemplo de un programa que resuelva ecuaciones de segundo grado, descomponíamos el problema en lassiguientes acciones: primero, pedir el valor de los coeficientes a, b y c; después, calcular el valor del discriminante; y por último, en función del signo del discriminante, calcular ninguna, una o dos raíces.

Como podemos ver, descomponíamos el problema en acciones, en verbos; por ejemplo el verbo pedir, el verbo hallar, el verbo comprobar, el verbo calcular…

La programación orientada a objetos esotra forma de descomponer problemas. Este nuevo método de descomposición es la descomposición en objetos; vamos a fijarnos no en lo que hay que hacer en el problema, sino en cuál es el escenario real del mismo, y vamos a intentar simular ese escenario en nuestro programa.

Los lenguajes de programación tradicionales no orientados a objetos, como C, Pascal, BASIC, o Modula-2, basan sufuncionamiento en el concepto de procedimiento o función. Una función es simplemente un conjunto de instrucciones que operan sobre unos argumentos y producen un resultado. De este modo, un programa no es más que una sucesión de llamadas a funciones, ya sean éstas del sistema operativo, proporcionadas por el propio lenguaje, o desarrolladas por el mismo usuario.

2

En el caso de los lenguajes...
tracking img