Want to make creations as awesome as this one?

Transcript

INICIAR

Programación para Videojuegos I

Para ver la información, da clic en la imagen.

La Programación Orientada a Objetos (POO) representa un paradigma fundamental en el mundo de la programación y desarrollo de software, destacándose por su enfoque modular y su capacidad para modelar el mundo real de manera más intuitiva y eficiente. A diferencia de los enfoques de programación tradicionales, la POO se centra en la creación de objetos, que son entidades que encapsulan datos y comportamientos relacionados. Este enfoque se inspira en cómo percibimos y nos relacionamos con el mundo real, lo que lo hace intuitivo y eficiente para modelar sistemas complejos. La POO ha dado lugar a una variedad de lenguajes de programación, como Java, C++, Python y C#, cada uno con sus características y enfoques particulares, pero todos compartiendo los principios fundamentales de la POO. Este paradigma no solo es crucial para el desarrollo de software a gran escala, sino que también es fundamental en áreas como el desarrollo de videojuegos, sistemas de bases de datos, interfaces gráficas de usuario y aplicaciones móviles.

Unidad 3. Fundamentos de la Programación Orientada a Objetos (POO)

3.1 Conceptos fundamentales de la Programación Orientada a Objetos (POO)

Para ver la información, da clic en la imagen.

La programación orientada a objetos (POO) emergió con el propósito de abordar y superar las limitaciones de la programación estructurada. Los desafíos asociados con la programación estructurada, como la gestión de código extenso y la naturaleza secuencial de su ejecución, a menudo conducían a dificultades significativas en el mantenimiento, depuración y comprensión de los programas a medida que estos crecían en complejidad. En la programación estructurada, el código extenso puede volverse confuso, lo que aumenta el riesgo de errores y complica su corrección. Además, su enfoque secuencial significa que cualquier fallo en una línea de código puede tener un efecto dominó, afectando potencialmente al funcionamiento general del programa. La POO fue diseñada como una respuesta a estos retos, proporcionando un marco más intuitivo y flexible para el desarrollo de software. A diferencia de la programación estructurada, que se centra en la secuencia de acciones a ejecutar, la POO se basa en objetos que representan entidades del mundo real o conceptual, con sus propios datos y lógica. Este enfoque permite una mayor modularidad, ya que los objetos pueden ser desarrollados y probados independientemente antes de ser integrados en sistemas más grandes.

Unidad 3. Fundamentos de la Programación Orientada a Objetos (POO)

Para ver la información, da clic en cada palabra.

Métodos Los métodos son funciones o procedimientos definidos dentro de una clase que determinan el comportamiento de los objetos. Son la esencia de la acción en la POO, permitiendo a los objetos interactuar con su entorno o con otros objetos. Los métodos pueden modificar las propiedades del objeto, ejecutar cálculos o realizar cualquier tarea relacionada con el propósito del objeto. Al igual que con las propiedades, los métodos están encapsulados dentro de los objetos, asegurando que el comportamiento del objeto esté bien definido y sea coherente.
Propiedades Las propiedades, también conocidas como atributos, son elementos que definen el estado de un objeto. Son variables encapsuladas dentro de un objeto que mantienen datos relacionados con ese objeto. Por ejemplo, en una clase Coche, las propiedades pueden incluir la marca, el modelo y el color. La habilidad de encapsular estas propiedades dentro de los objetos no solo ayuda a mantener el código organizado y seguro, sino que también facilita la manipulación y el acceso a los datos de manera controlada, a través de métodos definidos.
Clases Las clases, en contraste con los objetos, son abstracciones más elevadas. Actúan como plantillas o moldes de los cuales los objetos son creados. Una clase define las propiedades y métodos comunes a un conjunto de objetos, estableciendo así una estructura uniforme. Son las clases las que otorgan a la POO su poder de reutilización y extensibilidad, permitiendo a los programadores definir una vez una estructura y luego crear múltiples objetos a partir de ella, cada uno con sus propiedades y comportamientos individuales.

3.1 Conceptos fundamentales de la Programación Orientada a Objetos (POO)

Objetos Los objetos son el corazón latiente de la POO. Representan entidades del mundo real o conceptual, encapsulando sus características y comportamientos. Cada objeto es una instancia de una clase y es único en su identidad. Lo que hace a los objetos tan vitales es su capacidad para encapsular datos y comportamientos, ofreciendo así una manera de abstraer y modelar aspectos complejos de la realidad en bloques de construcción manejables. Los objetos sirven como núcleos de interacción dentro de un programa, colaborando entre sí para ejecutar tareas complejas.

Unidad 3. Fundamentos de la Programación Orientada a Objetos (POO)

Ejemplo. Clase “Vehículo” en Java
public class Vehiculo { private String marca; private String modelo; public Vehiculo(String marca, String modelo) { this.marca = marca; this.modelo = modelo; } public void mostrarInformacion() { System.out.println("Vehiculo de marca " + marca + " y modelo " + modelo); } // Getters y setters para marca y modelo public String getMarca() { return marca; } public void setMarca(String marca) { this.marca = marca; } public String getModelo() { return modelo; } public void setModelo(String modelo) { this.modelo = modelo; } }

3.1 Conceptos fundamentales de la Programación Orientada a Objetos (POO)

Un ejemplo clásico para ilustrar los conceptos de la Programación Orientada a Objetos (POO) es el de una aplicación de gestión de vehículos. En este ejemplo, crearemos una clase básica Vehiculo y luego derivaremos clases específicas como Coche y Motocicleta que heredan características de la clase Vehiculo.

Unidad 3. Fundamentos de la Programación Orientada a Objetos (POO)

Ejemplo. Clase “Motocicleta” en Java

3.1 Conceptos fundamentales de la Programación Orientada a Objetos (POO)

public class Motocicleta extends Vehiculo { private String tipo; public Motocicleta(String marca, String modelo, String tipo) { super(marca, modelo); this.tipo = tipo; } @Override public void mostrarInformacion() { System.out.println("Motocicleta de marca " + getMarca() + ", modelo " + getModelo() + " de tipo " + tipo); } // Getter y setter para tipo public String getTipo() { return tipo; } public void setTipo(String tipo) { this.tipo = tipo; } }
Ejemplo. Clase “Coche” en Java
public class Coche extends Vehiculo { private int numeroPuertas; public Coche(String marca, String modelo, int numeroPuertas) { super(marca, modelo); this.numeroPuertas = numeroPuertas; } @Override public void mostrarInformacion() { System.out.println("Coche de marca " + getMarca() + ", modelo " + getModelo() + " con " + numeroPuertas + " puertas"); } // Getter y setter para numeroPuertas public int getNumeroPuertas() { return numeroPuertas; } public void setNumeroPuertas(int numeroPuertas) { this.numeroPuertas = numeroPuertas; } }
En este ejemplo, la clase Vehiculo es la clase base que contiene propiedades y métodos comunes a todos los vehículos. Las clases Coche y Motocicleta son clases derivadas que extienden Vehiculo, añadiendo sus propios atributos y sobrescribiendo el método mostrarInformacion() para reflejar su información específica. Esto demuestra los principios de la herencia y el polimorfismo en la POO.

Unidad 3. Fundamentos de la Programación Orientada a Objetos (POO)

Un paradigma, en este contexto, se entiende como una teoría o marco conceptual que proporciona las bases y el modelo para abordar y resolver problemas. En la POO, este paradigma se sustenta en cuatro elementos principales:
  • Clases
  • Propiedades
  • Métodos
  • Objetos

Reproduce el siguiente material audiovisual, fortalecerás tu comprensión sobre la Programación Orientada a Objetos: EDteam (2019, 19 de junio) ¿Qué es la programación orientada a objetos? - La mejor explicación en español [video] YouTube https://www.youtube.com/watch?v=DlphYPc_HKk

Sabías qué: "La POO ha tenido un impacto significativo en las metodologías de desarrollo de software ágil. Los principios de la POO, como la modularidad y la reutilización, se alinean bien con las prácticas ágiles, facilitando la refactorización del código, la integración continua y el desarrollo iterativo. “