¿Incrementa la herencia el tamaño del programa?


([N1] JA el Tempranillo) #1

Hola,

He estado ojeando algunos artículos buscando respuesta a esta pregunta, pero no he conseguido encontrarlo.

Leo con frecuencia heredar de vBase, de vTal y vCual, y me asalta la duda de que heredar de un proyecto del que sólo usaré algunos campos de sus tablas, si no me saldrá un programa final demasiado voluminoso, porque si heredo de un proyecto tengo acceso a todo lo que hay en el mismo, por lo que creo que todos los proyectos que de los que herede mi proyecto irán siempre “pegados” al mismo. ¿Es así?

Gracias desde ya por vuestro tiempo.


([N1] Pepeto) #2

Cuando heredas una solución, la heredas completa, es decir, no puedes heredar solo unos objetos de esa solucion. Ademas eso no tiene sentido.

Si lo que deseas es usar una misma tabla en 2 soluciones distintas, lo que debes hacer, es valorar que te trae mas cuenta, heredar la solucion, o copiar la tabla en el otro proyecto.

La herencia esta pensada para reaprovechar codigo, para modularizar aplicaciones, y para eso, tambien es necesario hacer un exaustivo trabajo de analisis y ver como es posible dividir esa estructura para que el funcionamiento de los modulos sea igual de eficaz cuando trabajan en conjunto como cuando trabajan por separado.

un saludo
José Luis
http://www.ascsl.com


([N1] JA el Tempranillo) #3

Gracias Pepeto,

Por tus palabras deduzco que hay que sopesar si debemos heredar de un determinado proyecto o sólo copiar de él alguna parte, sopena de obtener un código de tamaño inmenso, es decir, no vale pensar, ¡ah!, me gustan 3 iconos de de tal galería de iconos, voy a heredar de ella, ¡ah!, me gusta la función tal de este proyecto, voy a heredarlo (puede que el día de mañana use otra función u otro icono), sino que debemos tener muy clarito qué usaremos de un proyecto y si su tamaño está en consonancia con el uso que pretendemos obtener del mismo.

Claro que, esta forma de comportamiento deja la herencia un tanto lejos de ser lo óptima que entendía. Me explico, yo entendería una mejora importantísima en el comportamiento de la herencia, que el proyecto que se construye tenga siempre acceso a todo el contenido de los proyectos de los que hereda, pero a la hora de construir el proyecto que va a ejecutarse sólo contemple aquello que se usa en nuestro código. Si esto llegase a oídos de cierta persona, quizás se tomase como todo un reto para mentes privilegiadas como la del gran vArquitecto.

Lo dicho, gracias.