Está en la página 1de 3

GA4-220501095-AA2-EV01

TALLER DE CONCEPTOS Y PRINCIPIOS DE PROGRAMACIÓN ORIENTADA A


OBJETOS
ANALISIS Y DESARROLLO DE SOFTWARE

Yuley Martínez Barrios

Servicio Nacional de Aprendizaje SENA


Ficha: 2626984
Realizar un glosario de terminología utilizada en la POO, cada término debe ser explicado con sus
propias palabras. En su propio concepto explicar cuáles son las características y los principios o
pilares básicos de la POO. Elementos a tener en cuenta:

La programación orientada a objetos (POO) es un paradigma de programación que se basa en el


concepto de objetos, los cuales son instancias de clases. Aquí tienes algunos conceptos y
principios fundamentales de la programación orientada a objetos:

Clase: Una clase es una plantilla o un plano para crear objetos. Define los atributos
(variables) y métodos (funciones) que los objetos de esa clase tendrán. Los atributos
representan las características o propiedades del objeto, mientras que los métodos
representan los comportamientos o acciones que el objeto puede realizar. Por ejemplo, si
tenemos una clase "Coche", los atributos podrían ser "marca", "modelo" y "color", y los
métodos podrían ser "arrancar", "acelerar" y "frenar".

Objeto: Un objeto es una instancia concreta de una clase. Se crea utilizando el plano (clase)
como base y tiene su propio conjunto de datos y comportamiento. Cada objeto tiene un
estado (valores de los atributos) y puede realizar acciones (llamar a los métodos definidos
en la clase). Por ejemplo, si tenemos la clase "Coche", un objeto de esa clase podría ser un
coche específico con su propia marca, modelo, color, etc.

Encapsulación: La encapsulación es un principio importante de la POO que consiste en


ocultar los detalles internos de un objeto y exponer solo lo necesario para interactuar con
él. Se logra definiendo los atributos de la clase como privados o protegidos, lo que significa
que solo se puede acceder a ellos desde dentro de la propia clase o desde clases derivadas
(herencia). Para interactuar con los atributos privados, se proporcionan métodos públicos,
conocidos como "getters" y "setters", que permiten obtener y establecer los valores de los
atributos de forma controlada. La encapsulación ayuda a proteger los datos y garantizar su
integridad, evitando modificaciones no deseadas desde fuera de la clase.

Herencia: La herencia es un mecanismo que permite que una clase herede atributos y
métodos de otra clase. La clase existente se denomina superclase o clase base, y la clase
nueva que se crea a partir de ella se denomina subclase o clase derivada. La herencia
permite reutilizar código y establecer relaciones jerárquicas entre las clases. La subclase
hereda los atributos y métodos de la superclase y puede agregar nuevos atributos y
métodos propios o incluso modificar los heredados. Esto promueve la reutilización del
código y la organización del software en jerarquías lógicas.

Polimorfismo: El polimorfismo es un principio de la POO que permite que objetos de


diferentes clases se utilicen de manera intercambiable en función de una interfaz común. El
polimorfismo se logra a través de dos técnicas principales: el polimorfismo de sobrecarga y
el polimorfismo de anulación.
El polimorfismo de sobrecarga permite que una clase tenga varios métodos con el mismo
nombre, pero diferentes parámetros. Esto significa que se pueden llamar a métodos con el
mismo nombre, pero con diferentes comportamientos en función de los argumentos
proporcionados.

El polimorfismo de anulación (o sobreescritura) se refiere a la capacidad de una subclase


para proporcionar una implementación específica de un método que ya está definido en su
superclase. Esto permite que los objetos de la subclase utilicen su propia implementación
del método cuando se llame a través de una referencia de la superclase.

El polimorfismo permite escribir código más flexible y genérico, ya que se puede trabajar
con objetos de diferentes clases a través de una interfaz común, sin preocuparse por los
detalles específicos de cada clase.

Abstracción: La abstracción se refiere a la capacidad de representar características y


comportamientos complejos de un objeto en un modelo simplificado. Permite enfocarse en
los aspectos esenciales de un objeto mientras se ocultan los detalles innecesarios. En la
POO, se utiliza la abstracción a través de clases abstractas e interfaces.

Una clase abstracta es una clase que no puede ser instanciada, sino que sirve como base
para otras clases. Proporciona una abstracción común y define métodos abstractos, que son
métodos sin implementación concreta. Las clases derivadas deben proporcionar una
implementación de estos métodos. Una clase abstracta puede tener también métodos
concretos (implementados) que son heredados por las subclases.

Una interfaz es una colección de métodos abstractos que definen un conjunto de


comportamientos que una clase debe implementar. Una interfaz proporciona una
abstracción pura, sin implementación. Las clases pueden implementar múltiples interfaces,
lo que permite lograr polimorfismo de interfaces.

La abstracción permite definir clases y objetos con un nivel de detalle adecuado para el
contexto de uso, ocultando los detalles internos de implementación y centrándose en la
funcionalidad esencial.

Estos conceptos y principios de la programación orientada a objetos son fundamentales para


comprender y utilizar eficientemente este paradigma en el desarrollo de software.

También podría gustarte