Clases en programación

clases en programación

Es evidente que, las clases en programación son plantillas o moldes que definen un conjunto de objetos con características comunes y comportamientos compartidos.

Para resumir, la programación orientada a objetos se basa en cuatro conceptos principales: encapsulación, herencia, polimorfismo y abstracción. En consecuencia, las clases en programación son esenciales para aplicar estos conceptos:

  1. Encapsulación: en resumidas cuentas, las clases en programación permiten encapsular o agrupar datos (atributos) y comportamiento (métodos) relacionados en una sola entidad.
  2. Herencia: Las clases pueden heredar propiedades y métodos de otras clases, lo que permite la creación de jerarquías de clases. Por cierto, esto fomenta la reutilización de código y la organización de objetos en categorías.
  3. Polimorfismo: El polimorfismo permite que diferentes clases puedan responder de manera uniforme a ciertas acciones o métodos.
  4. Abstracción: Las clases permiten abstraer los detalles complejos de la implementación y centrarse en las características esenciales de los objetos.

Atributos:

Por otra parte, cada instancia u objeto de una clase puede tener sus propios valores para sus atributos, lo que permite que los objetos individuales mantengan su propio estado.

Instancia:

Es evidente que en programación orientada a objetos (POO), una instancia de una clase es un objeto específico que se crea a partir de una clase.

En primer término, en UML (Unified Modeling Language), las clases se representan gráficamente con un rectángulo.

  1. Nombre de la Clase: Se colocan en la parte superior de la representación y se escribe en negrita o con un estilo diferente para destacarlo. Por cierto, el nombre de la clase describe el tipo de objeto que la clase representa.
  2. Atributos: Se muestran en la sección central de la representación, Cada atributo se enumera en una línea separada y se compone de tres partes: el nombre, el tipo de dato y la visibilidad (pública, privada, protegida, etc.).
  3. Métodos: en resumidas cuentas, se encuentran en la sección central de la representación de la clase, cada método se enumera en una línea y suele incluir el nombre, los parámetros de entrada, el tipo de retorno y la visibilidad.
  4. Compartimentos: Puedes usar compartimentos o secciones adicionales en la representación de las clases en programación para organizar atributos y métodos en grupos lógicos. Esto puede facilitar la comprensión y el diseño de la clase.
  5. Estereotipos: La clase se etiqueta con el estereotipo «<<class>>» para indicar que representa una clase. Este estereotipo suele colocarse antes del nombre de la clase.
  6. Relaciones: Las relaciones entre clases se representan mediante líneas y conectores que unen las clases relevantes.

Por ejemplo, aquí hay un ejemplo de cómo se vería la representación de una clase simple llamada «Coche» en un diagrama de clases de UML:

<<class>> Coche

———————————————

  • marca: String
  • modelo: String
  • añoFabricacion: int

———————————————-

  • encender(): void
  • apagar(): void
  • acelerar(velocidad: int): void
  • frenar(): void

Encapsulación:

Para empezar, las principales visibilidades son las siguientes:

  1. + (Pública): Representada con un símbolo de más (+), indica que el atributo o método es completamente accesible desde cualquier parte del sistema.
  2. – (Privada): Representada con un símbolo de menos (-), indica que el atributo o método es accesible solo dentro de la propia clase que lo define. Los miembros privados no son accesibles desde fuera de la clase.
  3. # (Protegida): Indica que el atributo o método solo es accesible dentro de la propia clase y clases derivadas. Los miembros protegidos permiten cierta extensibilidad y herencia controlada.
  4. ~ (Amistosa): en resumidas cuentas, indica que el atributo o método solo es accesible dentro del módulo. La visibilidad es importante en UML para algunos escenarios de diseño.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *