Programación Orientada A Objetos
Enviado por tojuro • 15 de Julio de 2013 • 1.158 Palabras (5 Páginas) • 249 Visitas
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,
con su 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.
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 cuantas caracterí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 esta complejidad 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 las siguientes 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 es otra 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 su funcionamiento 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.
En el caso de los lenguajes orientados a objetos, como es el caso de C++ y Java, el
elemento básico no es la función, sino un ente denominado precisamente objeto. Un
objeto es la representación en un programa de un concepto, y contiene toda la
información necesaria para abstraerlo: datos que describen sus atributos y operaciones
que pueden realizarse sobre los mismos.
La programación orientada a objetos es una nueva forma de pensar, una manera distinta
de enfocar los problemas. Ahí radica la dificultad de aprender un lenguaje totalmente
orientado a objetos, como es Java, sin conocer previamente los pilares de la
programación orientada a objetos. Hecha esta importante aclaración, conviene destacar
que Java, más que un lenguaje orientado a objetos, es un lenguaje de objetos. Java
incorpora el uso de la orientación a objetos como uno de los pilares básicos y
fundamentales
...