Anteriormente la forma de programar
era orientada a procedimientos,
ejemplos de estos lenguajes de programación son Fortran, Cobol, Basic, etc., eran códigos largos y
complejos. Lo de complejos era porque un proyecto entero ocupaba un montón de
líneas de código y si había algún error podías tirarte mucho tiempo encontrando
el error, este tipo de programación tenía muchas desventajas:
·
Unidades
de código muy grandes en aplicaciones complejas.
·
En
aplicaciones complejas el código resultaba difícil de descifrar.
·
Poco
reutilizable.
·
Si
existe fallo en alguna línea del código, es muy probable que el programa caiga.
·
Aparición
frecuente de código espagueti.
·
Difícil
de depurar por otros programadores en caso de necesidad o error.
Una de las soluciones para programar
de otra forma era trasladar la naturaleza de los objetos de la vida real al
código de programación, y ¿cuál es la naturaleza de un objeto de la vida real?
Los objetos tienen un estado, un comportamiento (¿qué puede hacer?) y unas
propiedades. Por ejemplo, un coche,
sería un objeto:
·
¿Cuál es el estado de un coche? Un coche puede estar parado,
circulando, aparcado, etc.
·
¿Qué propiedades tiene un coche? Un coche tiene un color, un peso, un
tamaño, etc.
·
¿Qué comportamiento tiene un coche? Un coche puede arrancar, frenar,
acelerar, girar, etc.
Así surgió el lenguaje de programación orientado a objetos.
Ejemplos de lenguaje de programación orientados a objetos son: C++, Java, Visual.NET, etc.
Tiene una serie de ventajas:
·
Programas
divididos en “trozos”, “partes”, “módulos” o “clases. Modularización.
·
Muy
reutilizable. Herencia
·
Si
existe fallo en alguna línea del código, el programa continuará con su
funcionamiento. Tratamiento de
Excepciones.
·
Encapsulamiento.
Si hacemos una comparación de la
programación orientada a procedimientos y la programación orientada a objetos,
la programación orientada a procedimientos sería una minicadena:
La minicadena necesita de todo lo que
se compone para poder funcionar, es decir, está compuesta o fabricada de un
solo bloque, si se estropea la pletina de los cassettes al soporte técnico
hemos de llevarle la mini-cadena entera, no podemos extraer la parte de los cassettes
porque está todo integrado en un bloque, con el inconveniente que al llevarlo
al soporte técnico nos quedamos sin equipo de música, igual que si se estropea
la pletina de los CD’s.
En cambio, la programación orientada a
objetos sería un equipo Hi-Fi
Equipos de música muy populares en la
década de los 80 principios de los 90. En este caso este equipo está formado
por módulos o partes, una parte es el amplificador, otra parte es la pletina,
otra parte es el tocadiscos… a través de cables se unen estás partes para
funcionar como un todo. La ventaja es que si se estropea la pletina no hace
falta llevar todo el equipo al soporte técnico, solo se llevaría el módulo de
la pletina, por lo que seguiríamos disfrutando de nuestro equipo de música ya
que todavía disponen de otros módulos como la radio, el tocadiscos, etc. Estas
partes o módulos que componen el equipo si lo comparáramos con la POO serían
las clases, la programación orientada a objetos funciona igual que un equipo
Hi-Fi.
Un lenguaje de programación orientado
a objetos se compone de muchas clases que se unen a través de métodos para
funcionar como una aplicación única, si una de las clases tiene errores no
significa que la aplicación no funcione del todo ya que dispone de otras clases
que puede hacer que la aplicación funcione aunque las funcionalidades de la
clase que está dando error no estén disponibles cuando la aplicación está en
ejecución.
En resumen, hemos conocido un nuevo concepto del lenguaje de programación orientado a objetos que es la modularización. La modularización consiste en distribuir el código en trozos o partes, estos trozos o partes serían las clases con la ventaja de que estas clases se pueden reutilizar para otras aplicaciones.
1.10.3 Recorrer arrays << >> 2.2 CLASES Y OBJETOS
No hay comentarios:
Publicar un comentario