Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clases. Una clase es la definición de un tipo de objetos. De esta manera, una clase
"Empleado" representaría todos los empleados de una empresa, mientras que un objeto
de esa clase (también denominado instancia) representaría a uno de esos empleados en
particular.
Las clases definen las características del objeto
El mensaje está codificado en el bloque de código de la clase Saludos. Este bloque de código
se ejecuta solamente cuando existe una instancia o variable de tipo Saludos, lo que ocurre
efectivamente al crear una instancia por medio de la instrucción New. En Simula, los objetos
siempre son manejados por medio de referencias. Existe un recolector de basura que se
encarga de eliminar de la memoria los objetos que se han quedado sin referencias a ellos. Una
de estas referencias la vemos con variable objeto. Utilizamos el operador :- para asignar
referencias. A diferencia de muchos lenguajes modernos, Simula entiende de dos tipos de
objetos:
Activos: Son aquellos objetos que aún no han completado su bloque asociado begin/end.
Inactivos: Son aquellos que han completado su bloque de instrucciones.
Tanto de unos como de otros, es posible ejecutar los procedimientos miembro y consultar los
atributos en cualquier momento.
EVOLUCIÓN
Años después del desarrollo de Simula 67 casi todos los lenguajes de programación modernos
comenzaron a utilizar los principios de orientación a objetos. Así fue como se popularizaron
términos como clases, objetos, instancias, herencia, polimorfismo, etc. Un ejemplo significativo fue
el nacimiento del lenguaje Java, uno de los lenguajes orientados a objetos con mayor
reconocimiento a nivel mundial.
VENTAJAS
- Una buena abstracción de las clases, objetos y atributos nos brinda una implementación más detallada,
puntual y coherente.
- Reutilización de código: Cuando se han diseñado adecuadamente las clases, se pueden usar en distintas
partes del programa y en numerosos proyectos (herencia). Lo cual permite:
Rápido desarrollo.
Alta calidad del código.
Bajo costo en fases de desarrollo.
- Modificabilidad: La facilidad de añadir o suprimir nuevos objetos nos permite hacer modificaciones de una
forma muy sencilla.
- Encapsulamiento: Nos permite proteger la integridad de los datos.
- Fiabilidad: Al dividir el problema en partes más pequeñas podemos probarlas de manera independiente y aislar
mucho más fácilmente los posibles errores que puedan surgir.
- Bajo acoplamiento y alta cohesión: Las clases son independientes entre sí, y hacen las tareas específicas para
las cuales fueron diseñadas.
- Beneficios de diseño
- Mantenimiento de software
- Amplia documentación
DESVENTAJAS
https://ferestrepoca.github.io/paradigmas-de-programacion/poo/poo_teoria/index.html
https://entrenamiento-python-basico.readthedocs.io/es/latest/leccion9/poo.html