Embarcadero

Autor Tema: Sobre Data Module  (Leído 2339 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado look

  • Usuario Activo
  • ***
  • Panel de agradecimientos
  • -Tu has dado: 39
  • -Tu has recibido: 19
  • Mensajes: 329
  • Calificaciones: +22/-0
  • Sexo: Masculino
  • wtf?
Sobre Data Module
« Topic Start: 26 de agosto de 2010, 13:16:53 »
Hola, me gustaria saber:
¿que son los DM?
¿cual es su mejor aplicacion?
he estado viendo que es una especie de formulario en donde se ponen los objetos de las base de datos y tablas, no me queda muy claro porque, cual es el beneficio o la forma en que estos trabajan.
saludos.
"Si piensas que los usuarios de tus programas son idiotas, sólo los idiotas usarán tus programas"
     -- Linus Torvalds

Comunidad Delphiaccess

Sobre Data Module
« : 26 de agosto de 2010, 13:16:53 »

Desconectado egostar

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 1182
  • -Tu has recibido: 641
  • Mensajes: 10,329
  • Calificaciones: +715/-7
  • Sexo: Masculino
  • coding my life
    • MeXistemas punto com
Re: Sobre Data Module
« Respuesta #1: 26 de agosto de 2010, 13:48:13 »
Hola

Cita de: De la ayuda de Delphi

Use a TDataModule object in an application to provide a location for centralized handling of nonvisual components. Typically these are data access components, such as TSQLDataSet, and TSQLConnection. DataModules are not limited to data access components, they can also contain other nonvisual components, such as TTimer, TOpenDialog, or TImageList).


Cita de:  de traductor de Google

Utilice un objeto TDataModule en una aplicación para proporcionar una ubicación para el manejo centralizado de los componentes no visuales. Generalmente, estos son componentes de acceso a datos, tales como TSQLDataSet y TSQLConnection. DataModules no se limitan a los componentes de acceso a datos, también pueden contener otros componentes no visuales, como TTimer, TOpenDialog o TImageList).


:)

Salud OS

"Si no quieres que la gente se olvide de ti apenas te mueras, escribe algo que valga la pena leerse o valga la pena escribirse."
- Benjamin Franklin
"Los programadores hicimos un pacto con dios, el no hace sistemas y nosotros no hacemos milagros."- Anónimo


          

Desconectado look

  • Usuario Activo
  • ***
  • Panel de agradecimientos
  • -Tu has dado: 39
  • -Tu has recibido: 19
  • Mensajes: 329
  • Calificaciones: +22/-0
  • Sexo: Masculino
  • wtf?
Re: Sobre Data Module
« Respuesta #2: 26 de agosto de 2010, 14:35:53 »
Hola

Cita de: De la ayuda de Delphi

Use a TDataModule object in an application to provide a location for centralized handling of nonvisual components. Typically these are data access components, such as TSQLDataSet, and TSQLConnection. DataModules are not limited to data access components, they can also contain other nonvisual components, such as TTimer, TOpenDialog, or TImageList).


Cita de:  de traductor de Google

Utilice un objeto TDataModule en una aplicación para proporcionar una ubicación para el manejo centralizado de los componentes no visuales. Generalmente, estos son componentes de acceso a datos, tales como TSQLDataSet y TSQLConnection. DataModules no se limitan a los componentes de acceso a datos, también pueden contener otros componentes no visuales, como TTimer, TOpenDialog o TImageList).


:)

Salud OS
entiendo. me igmagine que de este modo trabajaban, hasta ahora siempre he dejado los componentes no visuales en los formularios, los voy utilizando a medida que los necesite.
bueno le voy a hechar un vistado pero no me llama mucho la atencion la utilidad de este concepto, como sea ¿ es mejor utilarlos?
"Si piensas que los usuarios de tus programas son idiotas, sólo los idiotas usarán tus programas"
     -- Linus Torvalds

Desconectado egostar

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 1182
  • -Tu has recibido: 641
  • Mensajes: 10,329
  • Calificaciones: +715/-7
  • Sexo: Masculino
  • coding my life
    • MeXistemas punto com
Re: Sobre Data Module
« Respuesta #3: 26 de agosto de 2010, 14:47:12 »
entiendo. me igmagine que de este modo trabajaban, hasta ahora siempre he dejado los componentes no visuales en los formularios, los voy utilizando a medida que los necesite.
bueno le voy a hechar un vistado pero no me llama mucho la atencion la utilidad de este concepto, como sea ¿ es mejor utilarlos?

Lo único que te puedo decir es que centralizar el acceso a datos es una buena práctica, personalmente no desarrollo un sistema sin este objeto, pero como todo, es cuestión de estilos de programación.

Salud OS

"Si no quieres que la gente se olvide de ti apenas te mueras, escribe algo que valga la pena leerse o valga la pena escribirse."
- Benjamin Franklin
"Los programadores hicimos un pacto con dios, el no hace sistemas y nosotros no hacemos milagros."- Anónimo


          

Desconectado felipe

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 82
  • -Tu has recibido: 136
  • Mensajes: 2,930
  • Calificaciones: +149/-0
  • Sexo: Masculino
  • 100% producto colombiano
    • Web
Re: Sobre Data Module
« Respuesta #4: 26 de agosto de 2010, 15:36:55 »
Hola

Cita de: De la ayuda de Delphi

Use a TDataModule object in an application to provide a location for centralized handling of nonvisual components. Typically these are data access components, such as TSQLDataSet, and TSQLConnection. DataModules are not limited to data access components, they can also contain other nonvisual components, such as TTimer, TOpenDialog, or TImageList).


Cita de:  de traductor de Google

Utilice un objeto TDataModule en una aplicación para proporcionar una ubicación para el manejo centralizado de los componentes no visuales. Generalmente, estos son componentes de acceso a datos, tales como TSQLDataSet y TSQLConnection. DataModules no se limitan a los componentes de acceso a datos, también pueden contener otros componentes no visuales, como TTimer, TOpenDialog o TImageList).


:)

Salud OS
entiendo. me igmagine que de este modo trabajaban, hasta ahora siempre he dejado los componentes no visuales en los formularios, los voy utilizando a medida que los necesite.
bueno le voy a hechar un vistado pero no me llama mucho la atencion la utilidad de este concepto, como sea ¿ es mejor utilarlos?

Debería llamarte la atención, más si tus aplicaciones trabajan con acceso a datos.

Saludos!
Que Dios te tenga en su gloria amigo lKinGl...

Web - Twitter - Facebook

Desconectado look

  • Usuario Activo
  • ***
  • Panel de agradecimientos
  • -Tu has dado: 39
  • -Tu has recibido: 19
  • Mensajes: 329
  • Calificaciones: +22/-0
  • Sexo: Masculino
  • wtf?
Re: Sobre Data Module
« Respuesta #5: 26 de agosto de 2010, 16:15:00 »
entiendo, bueno hasta ahora no he tenido problemas con mi manera de trabajar sin DM, voy hacer unas pruebas.
gracias por sus comentarios.
"Si piensas que los usuarios de tus programas son idiotas, sólo los idiotas usarán tus programas"
     -- Linus Torvalds

Desconectado felipe

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 82
  • -Tu has recibido: 136
  • Mensajes: 2,930
  • Calificaciones: +149/-0
  • Sexo: Masculino
  • 100% producto colombiano
    • Web
Re: Sobre Data Module
« Respuesta #6: 26 de agosto de 2010, 16:17:19 »
entiendo, bueno hasta ahora no he tenido problemas con mi manera de trabajar sin DM, voy hacer unas pruebas.
gracias por sus comentarios.

Puede que no, pero seguramente notarás cambios en el rendimiento. Ya nos comentarás como te fué :)


Saludos!
Que Dios te tenga en su gloria amigo lKinGl...

Web - Twitter - Facebook

Desconectado look

  • Usuario Activo
  • ***
  • Panel de agradecimientos
  • -Tu has dado: 39
  • -Tu has recibido: 19
  • Mensajes: 329
  • Calificaciones: +22/-0
  • Sexo: Masculino
  • wtf?
Re: Sobre Data Module
« Respuesta #7: 26 de agosto de 2010, 16:41:44 »
entiendo, bueno hasta ahora no he tenido problemas con mi manera de trabajar sin DM, voy hacer unas pruebas.
gracias por sus comentarios.

Puede que no, pero seguramente notarás cambios en el rendimiento. Ya nos comentarás como te fué :)


Saludos!

seguro que si, gracias nuevamente.
"Si piensas que los usuarios de tus programas son idiotas, sólo los idiotas usarán tus programas"
     -- Linus Torvalds

Desconectado Caral

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 223
  • -Tu has recibido: 320
  • Mensajes: 3,537
  • Calificaciones: +368/-4
  • Sexo: Masculino
  • Siempre Novato
Re: Sobre Data Module
« Respuesta #8: 26 de agosto de 2010, 18:44:53 »
Hola
Bueno:
El datamodule:
Un lugar en el espacio:

Después de este preámbulo, yo opino.......... *-)
No es muy bueno para contener todos los componentes no visuales de conexion a las BD.
Esto lo digo por que:
Si se tiene una aplicacion de muchos forms revisar los codigos se hace mucho mas sencillo cuando los componentes estan en el mismo form.
Ahora:
Lo que si se puede colocar en el DM son los tables ya que nunca cambia su contenido.
Por lo tanto:
Aunque se diga que el DM es especial para contener estos no siempre sera la mejor opcion.
Insistiendo:
Si se colocan querys en el DM se hara un arroz con mango (dicho Tico), que no sabra bien. :D
Incluso:
Se comenta que mejora la velocidad, Bueno, seria imperceptible. :p

No se, digo.......
Saludos
« Última Modificación: 26 de agosto de 2010, 18:46:48 por Caral »

Desconectado Delphius

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 217
  • -Tu has recibido: 337
  • Mensajes: 4,361
  • Calificaciones: +381/-2
  • Sexo: Masculino
  • ¿El polimorfismo seguirá siendo parte de mi vida?
Re: Sobre Data Module
« Respuesta #9: 26 de agosto de 2010, 20:24:44 »
Creo que lo dicho en otro hilo también podría llevar a comprender el tema.

Saludos,
Como redactar mensajes - Uso de etiquetas

Se enseña por amor a los demás, se aprende por amor a la verdad
Cuanto más se busca la verdad, sin llegar a la perfección, anhelamos saber lo que falta

San Agustín

Desconectado Rolphy Reyes

  • Moderadores
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 225
  • -Tu has recibido: 299
  • Mensajes: 1,944
  • Calificaciones: +321/-0
  • Sexo: Masculino
  • TRolphyReyes = Class(TBaseModerador)
Re: Sobre Data Module
« Respuesta #10: 26 de agosto de 2010, 21:49:14 »
Saludos.

"Sin DataModule no existen aplicaciones con conexión a Base de Datos".

Procedo a explicar porque. En mis desarrollos personales tengo un DataModule que contiene los componentes de conexión a la BD (Connection, Transaction, etc...).

Luego tengo un DataModule base donde colocó un TDataSet y tiene un constructor para pasarle el DataModule de conexión a la BD; además de una series de métodos públicos que encapsulan las distintas llamadas a Insert, Update, Delete, Cancel y Post.

Ahora bien el detalle esta en que cada tabla de la BD tiene su DataModule, donde cada DataModule tiene lo necesario para "hablar" con esa tabla en particular.  Gano con esto, que donde necesite trabajar con una tabla solo agrego esa unidad que sabe lo que tiene que hacer. Desventaja que puede ser un tanto incómodo para darle mantenimiento.

Mis formularios tienen un TDataSource y una propiedad tipo DataModule Base, donde ellos instancian el DataModule que necesiten.

Espero que se comprenda.
Lo único predecible en la vida es lo impredecible!

Si encontró útil este Mensaje utilice el Botón de Gracias.

¿Cómo postear correctamente?

Desconectado egostar

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 1182
  • -Tu has recibido: 641
  • Mensajes: 10,329
  • Calificaciones: +715/-7
  • Sexo: Masculino
  • coding my life
    • MeXistemas punto com
Re: Sobre Data Module
« Respuesta #11: 26 de agosto de 2010, 21:52:09 »
Insisto en que sigue siendo cuestion de gustos y estilos ;)

Tu estilo me gusta amigo Rolphy (y)

Salud OS

"Si no quieres que la gente se olvide de ti apenas te mueras, escribe algo que valga la pena leerse o valga la pena escribirse."
- Benjamin Franklin
"Los programadores hicimos un pacto con dios, el no hace sistemas y nosotros no hacemos milagros."- Anónimo


          

Desconectado cadetill

  • Moderadores
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 137
  • -Tu has recibido: 193
  • Mensajes: 966
  • Calificaciones: +199/-0
  • Sexo: Masculino
    • El blog de cadetill
Re: Sobre Data Module
« Respuesta #12: 27 de agosto de 2010, 01:06:29 »
Buenas,

Yo estoy de acuerdo con egostar, todo es cuestión de gustos.

Personalmente me gusta diferenciar la gestión de los datos de lo que es la parte visual, pero entiendo y comprendo a la gente que le gusta tener ese control dentro del mismo formulario. Además, es cierto que la programación con DM se complica si haces herencia visual y usas aplicaciones MDI.

No obstante, si yo tuviera que escoger, sin duda diría que programar con DM es una buena práctica :)

Nos leemos
Salu2
cadetill

Desconectado Rolphy Reyes

  • Moderadores
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 225
  • -Tu has recibido: 299
  • Mensajes: 1,944
  • Calificaciones: +321/-0
  • Sexo: Masculino
  • TRolphyReyes = Class(TBaseModerador)
Re: Sobre Data Module
« Respuesta #13: 27 de agosto de 2010, 07:34:42 »
Buenas,

Yo estoy de acuerdo con egostar, todo es cuestión de gustos.

Personalmente me gusta diferenciar la gestión de los datos de lo que es la parte visual, pero entiendo y comprendo a la gente que le gusta tener ese control dentro del mismo formulario. Además, es cierto que la programación con DM se complica si haces herencia visual y usas aplicaciones MDI.

No obstante, si yo tuviera que escoger, sin duda diría que programar con DM es una buena práctica :)

Nos leemos


Saludos.

Justamente por ser MDI las aplicaciones por eso empleo ese modelo que describí en el mensaje anterior.  Con eso de que cada Formulario instancia su DM me evito el problema de que la data sea "compartida" y se refleje los movimientos dentro del TDataSet en los distintos formularios.

 
Lo único predecible en la vida es lo impredecible!

Si encontró útil este Mensaje utilice el Botón de Gracias.

¿Cómo postear correctamente?

Desconectado cadetill

  • Moderadores
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 137
  • -Tu has recibido: 193
  • Mensajes: 966
  • Calificaciones: +199/-0
  • Sexo: Masculino
    • El blog de cadetill
Re: Sobre Data Module
« Respuesta #14: 27 de agosto de 2010, 12:53:50 »
Buenas

....Con eso de que cada Formulario instancia su DM me evito el problema de que la data sea "compartida" y se refleje los movimientos dentro del TDataSet en los distintos formularios.

Efectivamente, ese es uno de los problemas al programar con MDI. Yo hago lo mismo, instancio un DM por cada child creado. Esto hace que en cada child creado se tenga que asignar el DataSource por código para que los componentes apunten "al que toca" o si tienes los DataSources en el child, hacer apuntar a éstos a los DataSets que toquen :)

Nos leemos
« Última Modificación: 27 de agosto de 2010, 12:56:13 por cadetill »
Salu2
cadetill

Desconectado look

  • Usuario Activo
  • ***
  • Panel de agradecimientos
  • -Tu has dado: 39
  • -Tu has recibido: 19
  • Mensajes: 329
  • Calificaciones: +22/-0
  • Sexo: Masculino
  • wtf?
Re: Sobre Data Module
« Respuesta #15: 27 de agosto de 2010, 13:11:36 »
ahora entiendo mas a profundidad, bueno mi inquietud venia mas porque a mi me gusta trabajar con forms MDI, es aqui donde se complica la situacion, de alli venia mi duda, pero ahora tengo mas claro el panorama.
saludos
"Si piensas que los usuarios de tus programas son idiotas, sólo los idiotas usarán tus programas"
     -- Linus Torvalds

Desconectado egostar

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 1182
  • -Tu has recibido: 641
  • Mensajes: 10,329
  • Calificaciones: +715/-7
  • Sexo: Masculino
  • coding my life
    • MeXistemas punto com
Re: Sobre Data Module
« Respuesta #16: 27 de agosto de 2010, 13:18:35 »
ahora entiendo mas a profundidad, bueno mi inquietud venia mas porque a mi me gusta trabajar con forms MDI, es aqui donde se complica la situacion, de alli venia mi duda, pero ahora tengo mas claro el panorama.
saludos

Y yo ahora entiendo con mas claridad tu cuestionamiento ;), que bueno que tenemos diferente estilo de programar ya que de esa forma conocemos los pros y contras de cada uno y en consecuencia adoptar otro, corregir o continuar con el propio (y).

Salud OS

"Si no quieres que la gente se olvide de ti apenas te mueras, escribe algo que valga la pena leerse o valga la pena escribirse."
- Benjamin Franklin
"Los programadores hicimos un pacto con dios, el no hace sistemas y nosotros no hacemos milagros."- Anónimo


          

Desconectado Delphius

  • Administrador
  • ******
  • Panel de agradecimientos
  • -Tu has dado: 217
  • -Tu has recibido: 337
  • Mensajes: 4,361
  • Calificaciones: +381/-2
  • Sexo: Masculino
  • ¿El polimorfismo seguirá siendo parte de mi vida?
Re: Sobre Data Module
« Respuesta #17: 27 de agosto de 2010, 13:37:42 »
De todas formas es como dice Eliseo, cuestión de "gustos" y de una serie de DEPENDES.  ;)

En resumen, no hay mejor o peor... Cada uno de los diseños y alternativas tienen sus pros y contras y queda en uno en determinar cual (o combinación de éstas, incluso) es la que mejor se ajusta a las necesidades.

En algunos proyectos será viable la alternativa A, para otros la Z.

Todo pasa por saber determinar aquellos puntos de unión y determinar como poder garantizar que estos puntos son lo suficiente estables. Hay una frase que dice algo así como que la parte más fuerte de la cadena está en la unión más débil. Una vez que se destruye esta todo se cae a pedazos.
En el desarrollo de un sistema pasa algo similar. La fortaleza de nuestros sistemas estará medida por la dureza de las uniones de los módulos.

Si haces de A puede que te falte algo que tenga B, y a la inversa... si vas por B algo te faltará que tiene A.

La unión de los módulos obedece a dos principios que no se pueden tratar de forma separada: acoplamiento y cohesión. Intenten atacar a uno sin afectar al otro  ;)

Saludos,
Como redactar mensajes - Uso de etiquetas

Se enseña por amor a los demás, se aprende por amor a la verdad
Cuanto más se busca la verdad, sin llegar a la perfección, anhelamos saber lo que falta

San Agustín