Universidad Abierta Para Adultos.
(UAPA)
Escuela:
Informática gerencial
Asignatura:
Programación III
Facilitad@r:
Loida Charles Ramírez
Loida charles
Participante:
Smarlim Mejía Cabrera
Tema:
Tarea 1
Fecha:
22/04/2024
Introducción
Los lenguajes de programación orientados a objetos (POO) son un paradigma de
programación que se basa en el concepto de los "objetos", los cuales son
entidades que estos combinan estado (datos) y comportamiento (métodos). Estos
lenguajes permiten modelar el mundo real de manera más cercana, lo que facilita
el desarrollo y mantenimiento de software. En este informe, exploraremos las
características, ventajas y desventajas de los lenguajes de programación
orientados a objetos.
Introducción a la programación orientada a objeto
1. Investigar en la web acerca de los lenguajes de programación
orientados a objetos, características, ventajas y desventajas. (Elaborar
un informe con Introducción, desarrollo y tu opinión personal).
Características de los lenguajes orientados a objetos:
1. Abstracción: Permite modelar entidades del mundo real como objetos
con propiedades y comportamientos.
2. Encapsulación: Oculta los detalles internos de un objeto y expone solo
la interfaz para interactuar con él.
3. Herencia: Este permite que una clase (objeto) herede unas propiedades
y comportamientos de otra, lo que promueve la reutilización de código.
4. Polimorfismo: Permite que un objeto pueda tomar diferentes formas y
comportarse de manera diferente según el contexto.
5. Modularidad: Este facilita la creación de software modular, donde cada
objeto es una unidad independiente y reutilizable.
Ventajas de los lenguajes orientados a objetos:
1. Reutilización de código: El modularidad y la herencia permiten
reutilizar el código existente, lo que ahorra tiempo y esfuerzo en el
desarrollo.
2. Mantenibilidad: La encapsulación permite modificar el comportamiento
de un objeto sin afectar a otros, lo que facilita el mantenimiento del
software.
3. Flexibilidad: El polimorfismo y la abstracción permiten poder adaptar el
software a diferentes situaciones y requisitos cambiantes.
4. Modelado del mundo real: Facilita la representación de entidades del
mundo real en el software, lo que ayuda a comprender y diseñar
sistemas más intuitivos.
5. Colaboración: Los objetos pueden comunicarse entre sí mediante unos
mensajes, lo que esto facilita la colaboración entre diferentes partes del
sistema.
Desventajas de los lenguajes orientados a objetos:
1. Mayor complejidad: La introducción de los conceptos como herencia y
polimorfismo puede aumentar la complejidad del código y dificultar su
comprensión para programadores novatos.
2. Overhead: Los lenguajes orientados a objetos suelen tener un mayor
consumo de recursos (memoria y procesamiento) en comparación con
otros paradigmas, debido a la gran necesidad de gestionar objetos y sus
relaciones.
3. Diseño excesivo: Si no se utiliza este adecuadamente, el modularidad
y la abstracción pueden llevar a un diseño excesivo y una sobrecarga de
estructuras de objetos innecesarias.
Concepto Autor Tu opinión
Una plantilla para crear objetos que define sus atributos y
Clase Definición de libro X
métodos.
Atributo Definición de libro Y Datos que describen las características de un objeto.
Procedimiento o funciones que definen el comportamiento de un
Método Definición de libre Z
objeto.
Definición de libre Una instancia de una clase que contiene tanto datos como
Objeto
W métodos.
Instancia Definición de libro P Un objeto creado a partir de una clase especifica.
Definición de libro El ocultamiento de los detalles internos de un objeto, permitiendo
Encapsulación
Q el acceso solo a través de métodos definidos.
La capacidad de diferentes objetos de responder al mismo
Polimorfismo Definición de libro R
mensaje de diferentes maneras.
2. Elabora un cuadro, debes mostrar la definición de los siguientes
temas y lo que entiendes por cada uno de los conceptos, es decir,
buscarás los conceptos en diferentes fuentes y cada uno de ellos tu
explicación acerca de lo que entiendes.
3. Elabora un video explicando lo que entiendes de cada concepto y
cuelga el link compartido en el documento.
[Link]
usp=sharing
Opinión personal
Personalmente, considero que los lenguajes de programación orientados a objetos
son una herramienta muy poderosa para el desarrollo de software, especialmente
en proyectos muy grandes y complejos. La capacidad de abstracción y
reutilización de código que ofrecen puede mejorar significativamente la
productividad y la calidad del software. Sin embargo, es importante tener en
cuenta las desventajas, como la complejidad y el overhead de memoria, y utilizar
el paradigma de manera adecuada según las necesidades del proyecto.