Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-11-2008
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Exclamation

Cita:
De hecho, los paquetes (Packages) se pueden utilizar para las dos cosas, es decir, tienes paquetes de diseño ("Desing Package" - los componentes que instalas en Delphi) y tienes paquetes de ejecución (RunTime Package), que son los que te interesarían y que puedes crear en Delphi. También tienes los paquetes que son de diseño y ejecución, pero eso ya es más aparte.

Utilizando paquetes (packages) puedes de manera muy sencilla, hacer módulos para tu sistema, en pocas palabras, tendrías un ejecutable (archivo .exe) con el que cargues los paquetes (módulos de tu sistema). Puedes manejar versiones de prueba, estandar, avanzadas, modulares o como lo necesites, simplemente sería cuestión de organizar como distribuyes los archivos de los paquetes (archivos .bpl).

Insisto todo lo que se ha dicho sobre los paquetes en Delphi(Paquetes dinamicos,etc)al parecer es a nivel de componentes.Si me equivoco corrijanme..
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #2  
Antiguo 26-11-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

Si bien los paquetes mayormente se usan para instalar componentes en el IDE, como bien te comenta ContraVeneno, también se pueden usar para lo que quieres. Estos son los llamados paquete en tiempo de ejecución.

Un paquete puede contener unidades de funciones y procedimientos, clases y/o formas.

Podrías tener un paquete Ventas.bpl con una clase TVentas, la cual al instanciarla como un objeto te cree las formas y demás para tu módulo de ventas. De tal forma que si tu aplicación no encuentra el paquete "Ventas.bpl" no activa esa opción.

Revisa bien los enlaces que ya te han proporcionado y verás que si se puede hacer lo que quieres.



Saludos...
Responder Con Cita
  #3  
Antiguo 26-11-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 24
ContraVeneno Va por buen camino
Cita:
Empezado por rgstuamigo Ver Mensaje
Si me equivoco corrijanme..
Estas equivocado, te corrijo . Los paquetes como ya hemos mencionado, pueden ser de diseño y/o de ejecución. Por lo que veo, solo has visto/leído sobre paquetes de diseño. Lo que a ti te interesa son los paquetes de ejecución (Runtime packages).

En el enlace que te puse, viene un ejemplo bien claro sobre como utilizar los paquetes para lograr lo que tu quieres (paquetes cargados dinámicamente). Concretamente, al final de la página vienen los ejemplos utilizados en el artículo y el que más te debería interesar es el tercer ejemplo.
__________________

Responder Con Cita
  #4  
Antiguo 26-11-2008
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Lightbulb

Ok saco mis conclusiones:
Al parecer Delphi en un lenguaje mas orientado a componente por tanto el concepto de PAQUETE es diferente que otros Lenguajes por tal razon la opcion de crearse Paquetes es un poco tediosa pero se puede aunque es distinta la forma de trabajar.
Les agradesco su tiempo y sus comentarios.....
Saludos.....
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #5  
Antiguo 26-11-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 24
ContraVeneno Va por buen camino
será que no conozco como hacen en otros lenguajes, pero el método de Delphi a mi no me parece tedioso, la verdad es que utilizando paquetes puedes realizar eso que necesitas y mucho más.

Un ejemplo, con los archivos:

MiSistema.Exe .- Archivo ejecutable para cargar dinámicamente los paquetes
Conexion.bpl .- Paquete con las funciones necesarias para realizar una conexión a base de datos. Tanto el .exe como todos los .bpl utilizan este mismo archivo, por tanto tienes una misma conexión para todos los módulos.
Ventas.bpl .- Paquete con los formularios para el módulo de ventas
Clientes.bpl .- Paquete con los formulario para el catálogo de clientes

Ahora, en cada paquete puedes incluir el número de versión y puedes tener por ejemplo:
Ventas.bpl - Versión 1 - paquete de prueba, con solo las funciones necesarias.
Ventas.bpl - Versión 2 - Paquete completo y funcional.

Si un cliente quiere el módulo de clientes, solo le envías la aplicación y su módulo de clientes. Y aquí podrías incluir el paquete de ventas en su versión de prueba. Si a tu cliente le gusta, solo es necesario enviar el archivo de la versión completa del módulo de ventas, no requiere instalación ni nada extra, solo cambiar el paquete (archivo .bpl).

Es que tu comentario de "crear paquetes es tedioso" no le encuentro sentido o explicación. Yo he trabajo con paquetes de la misma manera en la que trabajarías con varios formularios en un solo ejecutable.
__________________

Responder Con Cita
  #6  
Antiguo 26-11-2008
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Cita:
Es que tu comentario de "crear paquetes es tedioso" no le encuentro sentido o explicación. Yo he trabajo con paquetes de la misma manera en la que trabajarías con varios formularios en un solo ejecutable.
Te das cuenta contraveneno que estas hablando de Formularios(Componente), es lo que decia y recalcaba,.
y aqui va una pregunta :
Y que pasa si quiero tener un paquete(Modulo de negocio) sin ningun formulario , es decir son puras unidades planas sin ni siquiera heredar de algun componentes?.¿Es posible hacerlo?
Por eso digo que el concepto es diferente entre un lenguaje y otro.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #7  
Antiguo 27-11-2008
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 20
Héctor Randolph Va por buen camino
Los paquetes en tiempo de ejecución en Delphi generan bibliotecas (*.BPL) que son simplemente bibliotecas (*.DLL) con características especiales para cada versión de Delphi.

Dicho de otra manera, si solamente quieres incluir código compilado dentro de un paquete, obtendrás el mismo resultado que generar una DLL.

Sin embargo, la principal característica de los BPL, es precisamente que te permiten incluir las clases, formularios, componentes, recursos en general y llamarlos directamente desde Delphi sin mayor problema.

Saludos.
Responder Con Cita
  #8  
Antiguo 27-11-2008
Avatar de diegofhernando
diegofhernando diegofhernando is offline
Miembro
 
Registrado: may 2003
Ubicación: Locombia papá!
Posts: 267
Poder: 22
diegofhernando Va por buen camino
Cita:
Empezado por rgstuamigo Ver Mensaje
Te das cuenta contraveneno que estas hablando de Formularios(Componente), es lo que decia y recalcaba,.
y aqui va una pregunta :
Y que pasa si quiero tener un paquete(Modulo de negocio) sin ningun formulario , es decir son puras unidades planas sin ni siquiera heredar de algun componentes?.¿Es posible hacerlo?
Por eso digo que el concepto es diferente entre un lenguaje y otro.
Si te refieres a que si puedes modularizar en uno de estos paquetes las "reglas de negocio" de tu aplicación la respuesta es SI y como comentan algunos amigos foristas, no es necesario u obligatorio que tengas componentes visuales dentro del paquete para que funcione, si solo quieres tener una función que reciba un parametro para generar un resultado bien lo podrias hacer.

Salu2
__________________
Diego. Colombia es pasión.
Responder Con Cita
  #9  
Antiguo 27-11-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Si bien pueden haber variaciones de un lenguaje a otro, yo creo que el concepto de paquete es, a fin de cuentas lo mismo: separar la aplicación en unidades lógicas que puedan intercambiarse sin afectar a las demás.

Como ya han mencionado, en un paquete de delphi se pueden meter componentes, formularios, unidades, planas, y demás recursos.

Nuestro amigo rgstuamigo insiste mucho en que los paquetes de delphi no son como en otros lenguajes, pero quizá sería bueno que aclarase más qué es lo que esperaría. Porque, por ejemplo, en java, los paquetes, hasta donde sé, únicamente contienen clases, pues, de hecho, en java sólo hay clases, no unidades "planas".

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como puedo "espiar" paquetes de datos? rauros Internet 3 29-09-2008 16:54:31
Necesito llamar a métodos de clases "hija" desde su clase "padre" Flecha OOP 17 20-04-2007 00:03:53
¿existe "on delete restrict" en Firebird ? Lepe Firebird e Interbase 9 14-04-2007 01:35:06
"No existe parche para la estupidez humana" Neftali [Germán.Estévez] Noticias 4 30-06-2006 19:36:58
Error "Ya existe un componente con el nombre QRStandarPreview" Jose Manuel Impresión 5 13-06-2003 07:55:26


La franja horaria es GMT +2. Ahora son las 11:45:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi