Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Duda con Build with runtime packages (https://www.clubdelphi.com/foros/showthread.php?t=65474)

dtomeysoto 17-12-2009 21:34:11

Duda con Build with runtime packages
 
Hola amigos, hoy me dio por probar marcar la opción Build with runtime packages y noté que al compilar un proyecto que estoy desarrollando de 2.66 MB bajó a 1.64 MB, luego me fijé en los paquetes que estaban en la lista de los Runtime packages y me fijé que no estaba el del Quickreport, lo añadí y el ejecutable volvió a disminiur, esta vez se quedó en 988 KB.

Tal vez alguien piense que decubrí el agua tibia, para ser sincero nunca había tocado esto, por lo que no tengo una idea muy clara.

Pudiera alguien decirme las ventajas y desventajas de compilar un proyecto con esta opción marcada.

Gracias, Damián.

fer21unmsm 17-12-2009 22:01:00

Cuando usaba delphi, lo que me percaté únicamente es que, si no estaba marcado, me creaba el ejecutable con todas la librerías incluídas(algunas veces metía cosas que no me iban a servir), en el caso de que lo marcaba, tenía que crear un instalador o copiar las librerias conjuntamente con el ejecutable.

cmm07 17-12-2009 22:51:55

Hola, esa opción sirve para no meter las librerías en tu ejecutable dejandolo mucho más reducido, claro para mí personalmente pienso que tiene más desventajas que ventajas, ya que si activas esa opción, al migrar un ejecutable de tu equipo(en donde está instalado delphi) a otro(en donde no tiene nada) tendrás que copiar aparte de tu exe archivos en la carpeta System32 , en cambio sin esta opción se crea por decirlo así una aplicación completamente "INDEPENDIENTE".

jhonny 17-12-2009 23:10:42

Cita:

Empezado por cmm07 (Mensaje 349086)
Hola, esa opción sirve para no meter las librerías en tu ejecutable dejandolo mucho más reducido, claro para mí personalmente pienso que tiene más desventajas que ventajas, ya que si activas esa opción, al migrar un ejecutable de tu equipo(en donde está instalado delphi) a otro(en donde no tiene nada) tendrás que copiar aparte de tu exe archivos en la carpeta System32 , en cambio sin esta opción se crea por decirlo así una aplicación completamente "INDEPENDIENTE".

Realmente todo depende de la necesidad... porque por ejemplo... si tu prioridad es que el aplicativo se pueda actualizar rapidamente (Digamos que OnLine) y sin que consuma mucho ancho de banda... pues activar esta opción puede ser muy ventajoso.

Otra ventaja es que si creas tu proyecto basandote en paquetes (.bpls), pues esta opción tambien te sera muy util.

Como decia... las desventajas o ventajas de esto, dependen realmente de la necesidad que se tenga.

Neftali [Germán.Estévez] 18-12-2009 11:38:52

Tal y como ha dicho jhonny y como reza la cación "Todo depende,..."
¿De qué depende? Pues de tus necesidades y de cada caso particular. No hay una opción que vaya "mejor" en todos los casos.

Cita:

Empezado por dtomeysoto (Mensaje 349084)
Pudiera alguien decirme las ventajas y desventajas de compilar un proyecto con esta opción marcada.

Compilar todo en un ejecutable te aporta:
* Portabilidad: Permite llevar tu programa de un sitio a otro copiando un único fichero.
* Sencillez: Sólo te preocupas de un fichero. Instalarlo en nuevos ordenadores es simple. Evitas instaladores o si los tienes que hacetr son muy básicos. Evitas problemas relacionados con las diferentes versiones de las BPL's que pueda haber en un sistema.
* Updates: Son sencillos.

¿Porqué entonces compilar con packages?
Yo diría que la opción de packages está por si necesitas "otras cosas", que la opción de ejecutable único no aporta. Si necesitas algunas de esas cualidades los packages te las dan, si no las necesitas, sólo te aportarán problemas. Si utilizas packages:
* Menor tamaño individual: Tienes más ficheros pequeños en lugar de tener uno más grande. Puede ir bien si tienes muchos packages a la hora de actualizar tu aplicación. Puedes actualizar packages de forma independiente. Sólo actulalizar los que necesites.
* Modularización del programa: Puedes añadir funcionalidades al programa añadiendo nuevos packages, incluso para diferentes clientes puedes tener diferentes versiones del mismo package.
* Posibilidad de carga dinámica: Puedes tener en memoria sólo aquellas partes de tu aplicación que necesitas en cada momento. La posibilidad de carga dinámica de packages es una maravilla. Utilizando packages puedes hacer de forma relatívamente sencilla un sistema de PlugIns para tu aplicación (aquí tienes cómo hacer uno, parte I y parte II).
* Gestión de memoria mejor: Piensa que al igual que las DLL's, los packages se comparten en memoria por aquellas aplicaciones que los están utilizando, de forma que si varias aplicaciones están utilizando los mismos packages, estás trabajando de forma más óptima en tu sistema.

A parte, conceptualmente (sobre todo a nivel de proyectos grandes) la división de un programa en packages puede facilitar el trabajo diario, la organización del proyecto,...

Pordríamos extendernos más, pero creo que más o menos ya hay algo sobre lo que pensar.

Personalmente para aplicaciones pequeñas-medianas, sin mucho tamaño y sin necesidades especiales optaría por compilar sin packages (todo incluído en el EXE), para aplicaciones grandes, me detendría en el momento del diseño, porque la opción de packages puede ser muy ventajosa (en algunos casos diría que incluso obligatora). Importante tener en cuenta en qué sistemas se va a desplegar la aplicación final, quien/cuantos usuarios la van a utilizar,...

Espero no haber liado más las cosas.

Un saludo.

cocute 18-12-2009 21:05:41

Pues yo precisamente si por algo empecé a usar Delphi es porque me permitia meter todo en el mismo ejecutable sin preocuparme de dependencias.
Como lenguaje visual yo empecé con Visual Basic 3.0 (creo que era) y era un coñazo tener que recopilar todos los DLL y OCX cada vez que queria portar los programas a otro ordenador.
(desconozco si en nuevas versiones de VB se puede meter todo en un ejecutable)

Hoy en dia no suele haber problemas de espacio en disco duro ni normalmente problemas de potencia de ejecución de los pcs, aunque está claro que siempre hay que buscar un poco la eficiencia de los programas pero no hasta el límite de crear dependencias de otros ficheros.


La franja horaria es GMT +2. Ahora son las 19:51:34.

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