Porgramación Orientada A Objetos. (Introducción)
MartinD23 de Noviembre de 2011
668 Palabras (3 Páginas)934 Visitas
(6.1) introducción a la programación orientada
a objetos
(6.1.1) qué es la programación orientada a objetos
A Java se le considera un lenguaje totalmente orientado a objetos. Aunque
este totalmente es a veces criticado por que hay elementos de Java que no
cumplen estrictamente las normas orientadas a objetos (como los tipos básicos
o la clase String por ejemplo), desde luego es un lenguaje en el que desde el
primer momento se manejan clases y objetos. De hecho siempre que se crea
un programa en Java, por simple que sea, se necesita declarar una clase (con
el public class correspondiente). El concepto de clase pertenece a la
programación orientada a objetos.
Es decir; en Java no se pueden crear aplicaciones que no sean orientadas a
objetos.
La Programación Orientada a Objetos (POO) es una técnica de programar
aplicaciones ideada en los años setenta y que ha triunfado desde los ochenta,
de modo que actualmente es el método habitual de creación de aplicaciones.
La programación estructurada impone una forma de escribir código que
potencia la legibilidad del mismo. Cuando un problema era muy grande, aún
que el código es legible, ocupa tantas líneas que al final le hacen inmanejable.
La programación modular supuso un importante cambio, ya que el
problema se descompone en módulos (en muchos lenguajes llamados
funciones) de forma que cada uno se ocupa de una parte del problema. Cuanto
más independiente sea cada módulo, mejor permitirá el mantenimiento de la
aplicación y el trabajo en equipo. Ya que cada persona puede programar cada
módulo sin tener en cuenta cómo se han programado los otros.
Pero nuevamente esta técnica se queda corta. Al final realmente los
módulos necesitan datos globales conocidos por todos, lo que resta
independencia a los mismos. Además los datos y las funciones se manejan de
forma distinta e independiente, lo que provoca problemas.
Con la POO se intenta solucionar esta limitación ya que el problema se
dividen en objetos, de forma que cada objeto funciona de forma totalmente
independiente. Un objeto es un elemento del programa que integra sus
propios datos y su propio funcionamiento. Es decir un objeto está formado por
datos (propiedades) y por las funciones que es capaz de realizar eel objeto
(métodos).
Esta forma de programar se asemeja más al pensamiento humano. La
cuestión es detectar adecuadamente los objetos necesarios para una
aplicación. De hecho hay que detectar las distintas clases de objetos.
Una clase es lo que define a un tipo de objeto. Al definir una clase lo que
se hace es indicar como funciona un determinado tipo de objetos. Luego, a
partir de la clase, podremos crear objetos de esa clase.
Realmente la programación orientada a objetos es una programación
orientada a clases. Es decir lo que necesitamos programar es como funcionanlas clases de objetos. Una clase podría ser la clase coche, que representa un
automóvil. Cuando se defina esta clases indicaremos las propiedades (como el
color, modelo, marca, velocidad máxima,...) y los métodos (arrancar, parar,
repostar,...). Todos los coches (es decir todos los objetos de clase coche)
tendrán esas propiedades y esos métodos.
Usando el mismo ejemplo del coche anterior para explicar la diferencia
entre clase y objeto; la clase coche representa a todos los coches. Sin
embargo cuando me fijo en un coche concreto, entonces me estoy fijando en
un objeto de clase coche (es decir, un ejemplar de una clase es un objeto).
...