Autor Tema: Diseño orientado a objetos: cómo diseñar clases y relaciones de herencia DOO POO  (Leído 4131 veces)

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Adjunto un archivo con un artículo sobre diseño orientado a objetos que pienso puede ser de interés

Saludos
« Última modificación: 20 de Abril 2015, 10:50 por Alex Rodríguez »

Dan_SB

  • Avanzado
  • ****
  • Mensajes: 273
  • *<DanielsCK>*
    • Ver Perfil
Gracias por el documento ! Muy util su info!
"Luchar por tus sueños y cumplirlos... eso es vivir.."

toni_apr

  • Avanzado
  • ****
  • Mensajes: 497
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Hola

Documento muy interesante.

Al leerlo me ha hecho recordar otros escritos donde se recomendaba crear estructuras de clases que resistan el paso del tiempo, que permitan la ampliación de la estructura sin desmontarla.

Esto hace que mis comentarios en hilos precedentes sean inadecuados.
Me refiero a la creación de estructuras de clases organizadas por atributos comunes descartando la clasificación de los objetos en el mundo real (que es lo que en definitiva queremos meter en nuestra estructura de clases)

Erróneamente creia que la compactación de clases y atributos tenía un valor positivo.

Así pues, descarto la compactación y abogo por la modularidad y reutilización en la creación de una estructura de clases.

Saludos

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola toni, me parece una reflexión acertada como las que haces habitualmente. El diseño del software (y más ampliamente toda la organización en torno a los grandes desarrollos de software donde intervienen decenas, cientos o miles de programadores en un proyecto, lo que se llama ingeniería del software) es algo todavía muy discutido, aunque hay un cierto grado de consenso sobre que es muy importante la ampliabilidad y la mantenibilidad. En un proyecto con miles de líneas de código en general se prefiere generar unas cuantas líneas más (aunque no sea óptimo) para hacer el código más legible y comprensible, porque a la larga esto tiene una repercusión positiva en el mantenimiento y ampliación. Creo que lo que indicas de compactación de clases y atributos tiene un valor positivo, pero todo hay que verlo en un contexto más amplio donde hay que poner en la balanza ventajas e inconvenientes y dado que no hay soluciones óptimas, elegir la que aporte más ventajas. La compactación es un buen valor para un programador, pero siempre que no vaya en contra de la claridad, la mantenibilidad, la ampliabilidad, etc. Creo que más o menos he dicho lo mismo que tú decías.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".