![]() |
Existe el concepto de "PAQUETES" en Delphi?
Hola amigos del club, quisiera saber si en Delphi existe el concepto de "paquetes" para crear Modulos en las aplicasiones, es decir por ejemplo:
Tener EL MODULO O PAQUETE DE VENTAS,MODULO O PAQUETE DE INVENTARIO,PAQUETE DE COMPRAS,ETC,ETC; que son cada uno independiente pero que entre todos forman el Sistema entre si. Pregunto esto por que desconosco si existe esa forma de trabajar en Delphi. No quisiera crear un conflicto pero en java se trabaja de esta forma con los famosos "paquetes" para que la aplicasion pueda tener las diferentes capas. Espero que me hayan entendido....;). ya que nesecito saber si se puede para poder implemetarlo en mi Aplicacion.... Muchas gracias de antemano.....:) |
Hola...
En Delphi tenemos el concepto de Packages que bien se podría utirlizar para lo que quieres... Busca en el foro por pluging o por paquetes y deberás encontrar más información al respecto. Saludos... |
Ya busque y no pude encontrar mucho que digamos, al parecer el concepto de "PAQUETE" en delphi se refiere a otra cosa y no a lo que me estoy refiriendo.
Parece ser que en Delphi el concepto de paquete se refiere mas especificamente a un grupo de componentes que pueden instalarse o crearse en el IDE. Pero yo no me refiero a eso sino a la forma de trabajar en una aplicasion multicapa. Espero haberme explicado...;) |
Si existe, aunque se usa cuando el sistema es grande, muy grande diría yo. Para mí es grande si el .exe pesa más de 10 megas, pero vamos, es mi criterio.
Aquí un enlace para empezar, después puedes ir tirando del hilo ;) Aquí otro, busca en el foro por "runtime package" (sin las comillas), algún hilo hablará de componentes, otros de datamodules y formularios... esos son los que te interesa ;). |
La idea de paquetes (tal como en Java) en Delphi no existen. Pero de hecho los paquetes en Java (por lo que he visto hasta el momento) no dejan de ser directorios.
Una forma de "emular" esto, seria creando los directorios y meter las units dentro. Asi en el inspector del proyecto, lo puedes tener origanizado por "paquetes". No se si se me ha entendido... xD |
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). Aquí tienes un ejemplo muy claro sobres como trabajar con paquetes con el que te puedes basar para lograr lo que buscas. |
Cita:
y puedes poner en un paquete no solo Form(Frames en java)sino tambien unidades planas, osea sin form(Frame). En cuanto a lo que dice Lepe me parece como lo he dicho antes que el concepto de Paquete en Delphi va relacionado con componentes. Los hilo que he visto hablan de form(Componentes)y otros. |
Cita:
|
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... |
Cita:
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. |
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..... |
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. |
Cita:
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?:confused:.¿Es posible hacerlo? Por eso digo que el concepto es diferente entre un lenguaje y otro. |
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. |
Cita:
Salu2 |
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 |
Opción 1:
Pues no se si se llaman paquetes, pero puedes hacer una dll por cada módulo de la aplicación. Opción 2: Hay una forma de dividir la aplicación que hagas en diferentes "paquetes". Lo malo es que no recuerdo como se llaman. Funcionan de forma similar a una dll... se cargan en momento de ejecución y luego hay que liberarlas al cerrar el programa (o el módulo del programa) |
Cita:
Cita:
Lo menos que quiero es crear una polemica sobre el caso , lo bonito es que podemos discutir este asunto con diplomacia y cada uno sacar sus conclusiones y aportar para el conocimiento de todos. Recapitulando alguna duda que aun me queda les preguntaria lo siguiente: Ustedes que tienen mas experiencia en el desarrollo de aplicaciones en delphi,¿Como hacen para trabajar en Delphi cuando tienen que hacer su aplicacion a nivel de capas(capa de negocio, capa de datos, capa de presentacion)?,¿Como lo organizan?,¿de que forma lo trabajan?,¿Alguien ha hecho alguna ves aplicaciones a nivel de capas en Delphi, que vaya acorde con la teoria de UML 2.0?¿Se podria tambien crear sub-Paquetes en Delphi para poder organizar mejor mis clases?:confused:. Es verdad que son varias preguntas pero necesito opiniones concretas para tomar deciciones claras en mi Sistema... Saludos.....:) |
La franja horaria es GMT +2. Ahora son las 13:16:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi