Retroceder   Foros del Web > Programación para sitios web > .NET

Respuesta
 
Herramientas Desplegado
Antiguo 18-ene-2005, 10:13   #1 (permalink)
andres_73 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2004
Mensajes: 26
clases abstractas, dll´s

buenas;

tal vez esta pregunta deba ir en el foro de programacion, pero en fin

voy a poner un ejemplo para ilustrar mi pregunta.

supongamos que tengo una clase abstracta X que lo que hace es agarrar dos numeros reales y devuelve la suma de ellos.

luego otra clase que hereda de X donde paso los parametros y obtengo el resultado.

supongo que esto tambien se puede hacer si en vez de una clase abstracta programo una dll.

bien, mi pregunta es cuando usar clases abstractas y cuando dll s?

gracias de antemano
andres_73 está desconectado   Responder Citando
Antiguo 18-ene-2005, 10:16   #2 (permalink)
GunkanX está en el buen camino
 
Fecha de Ingreso: noviembre-2002
Mensajes: 27
Una dll no puede heredar de otra dll. En todo caso lo que tu necesitas es una librería de clases. Y si, creo que tienes que preguntar en el foro de programación.
__________________
Lo que puede fallar, falla. Lo que parece que no fallará, falla también.
GunkanX está desconectado   Responder Citando
Antiguo 18-ene-2005, 10:24   #3 (permalink)
andres_73 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2004
Mensajes: 26
buenas,

gracias por la respuesta.

se que una dll no puede heredar de otra.

cuando es conveniente que una clase herede de una abstracta y cuando es conveniente que una clase "trabaje" con los metodos, funciones de una dll?

saludos
andres_73 está desconectado   Responder Citando
Antiguo 18-ene-2005, 11:54   #4 (permalink)
GunkanX está en el buen camino
 
Fecha de Ingreso: noviembre-2002
Mensajes: 27
Estas mezclando conceptos como son el de programación orientada a objetos o procedimental y el de DLL, OCX, etc.

Vamos por partes.
1. Si trabajas con programación orientada a objetos, crearas objetos. A veces, te resultará necesario crear objetos heredados de otros porque hacerlo de cero es demasiado trabajo (hacer un Applet en Java desde cero es una locura, para eso tienes la clase Applet, para heredar de ella). No tienes porque heredar en ningun caso si no se da el caso.

2.Una DLL es una librería de funciones que se cargan en tiempo de ejecución dinámicamente. No es necesario que se carguen todas al inicio, sólo en la parte que las utiliza. Estas DLL tienen una serie de funciones con sus parámetros que tu puedes utilizar en tu programa sin necesidad de codificarlas de nuevo. Sería como hacer un include pero las DLL ya vienen precompiladas.

3. Existen "DLL" con objetos predefinidos para que puedas crearlos en tiempo de ejecución, pero de estos no se puede heredar puesto que no tienes el código fuente. Una librería de clases SI permite heredar de ella puesto que es un include completo del código de una clase para tu proyecto.

Cita:
cuando es conveniente que una clase herede de una abstracta y cuando es conveniente que una clase "trabaje" con los metodos, funciones de una dll?
4. Las DLL se suelen usar en un proyecto para reutilizar código. O si el código fuente no es tuyo para comprar funcionalidades o incorporar estandares (twain32.dll para acceso a escaneres). Para proyectos pequeños ni siquiera necesitas utilizar DLLs. Una clase no puede crear objetos que tengan funciones propias del objeto dentro de DLLs. Diferente es que una clase tenga un procedimiento que llame a una función de una DLL externa. Yo tengo objetos que llaman a dll's que tienen funciones de tratamiento de imágenes. Pero no es lo normal. Lo que es conveniente depende del diseño o la necesidad.

Más o menos espero que entiendas la idea, aunque evidentemente todo esto "depende".
__________________
Lo que puede fallar, falla. Lo que parece que no fallará, falla también.

Última edición por GunkanX; 18-ene-2005 a las 12:05.
GunkanX está desconectado   Responder Citando
Antiguo 18-ene-2005, 13:26   #5 (permalink)
andres_73 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2004
Mensajes: 26
clarisimo, muchas gracias.

otra cosita, ya que mencionaste que usas una determinada ddl para trabajar con escáners. de dónde obtengo información acerca de las dll que están disponibles para realizar distintas tareas (impresión, escáner y un casi infinito etcétera)?

de nuevo gracias
andres_73 está desconectado   Responder Citando
Antiguo 19-ene-2005, 01:16   #6 (permalink)
GunkanX está en el buen camino
 
Fecha de Ingreso: noviembre-2002
Mensajes: 27
No es una información asequible de forma sencilla. Yo esa información la tengo en libros y documentación PDF. Aunque estoy seguro de que estará en Inet. algunos compiladores te sacan la definición de las funciones de las DLL's y sus parámetros, pero siempre es mejor que tengas una idea de lo que hacen estas funciones.
__________________
Lo que puede fallar, falla. Lo que parece que no fallará, falla también.
GunkanX está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 09:07.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93