¿Por qué no todas las aplicaciones son portátiles?
Es una pregunta que molesta a cualquiera que se haya enamorado de las aplicaciones portátiles: por qué no todos aplicaciones portátiles?
La sesión de Preguntas y Respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación impulsada por la comunidad de sitios web de preguntas y respuestas.
La pregunta
El lector superusuario Tom adora la organización limpia que proporcionan las aplicaciones portátiles y quiere saber por qué todo no es portátil:
Recientemente he estado tratando de 'instalar' cosas mucho menos en mi máquina con Windows (odio a los instaladores, necesito saber dónde ponen las cosas los programas ...), optando por usar versiones portátiles o independientes de las aplicaciones.
Los puse todos en un directorio de 'Programas' en una unidad separada de mi partición de Windows, por lo que cada vez que reinstalo, tengo todas mis aplicaciones disponibles con el mínimo esfuerzo y en el lado positivo, obtengo una configuración limpia y agradable.
Las aplicaciones como Office y Creative Suite todavía requieren que pase por un proceso de instalación horriblemente largo en el que se lanzan mil bibliotecas y herramientas al azar en mi sistema.
¿Por qué las aplicaciones de Windows todavía necesitan ser instaladas? ¿Por qué no podemos arrastrar Photoshop a una carpeta à la OSX y simplemente hacer que funcione? ¿Alguien más se enfoca en aplicaciones portátiles, o estoy siendo OCD acerca de todo el asunto??
Ciertamente somos fanáticos de las aplicaciones portátiles y también nos gustaría llegar al fondo de las cosas..
La respuesta
David Whitney, colaborador del Superusuario, ofrece una idea de por qué muchas aplicaciones no son portátiles y cómo Windows impone una especie de acuerdo anti-portabilidad:
Los instaladores son el resultado de años de evolución y un poco de historia (simplificada) ayuda a comprender por qué hacen lo que hacen ...
El modelo de Windows 3.1 sugirió archivos de configuración de estilo config.ini por aplicación con bibliotecas compartidas compatibles que van a las carpetas del sistema para evitar la duplicación y el desperdicio de espacio en disco.
Windows 95 introdujo el registro permitiendo que un almacén central para la configuración de la aplicación reemplazara muchos archivos de configuración. Más importante aún, la configuración de Windows se almacenó en el mismo lugar.
El registro se hinchó debido a que las aplicaciones no se limpiaron por sí mismas. El infierno de DLL sucedió como resultado de que varias versiones de las mismas bibliotecas compartidas se sobrescribieran entre sí.
.NET introdujo el concepto de app.config (los archivos casi ini marcan el 2, esta vez con un poco más de estructura, lo que ahorra a los desarrolladores perdiendo el tiempo en escribir analizadores manuales). El GAC se introdujo en la versión de ensamblajes compartidos en un intento de evitar DLL Hell.
En Windows XP y más en Vista, Microsoft intentó definir el espacio de usuario como un lugar para almacenar datos de usuario y archivos de configuración en una única ubicación estándar para permitir los perfiles móviles y la migración fácil (solo copie su perfil) con las aplicaciones instaladas en los Archivos de programa.
Así que supongo que la razón es que "las aplicaciones en Windows están diseñadas para vivir en un lugar, sus dependencias compartidas en otro y los datos específicos del usuario en otro", lo que funciona bastante en contra del concepto de xcopying en una única ubicación.
... y eso es antes de que tenga que configurar las cuentas de usuario y configurar y garantizar los permisos de seguridad y descargar actualizaciones e instalar servicios de Windows ...
xcopy es el "caso simple" y ciertamente no es el mejor ajuste para todo.
Desafortunadamente para los fanáticos de todas las cosas portátiles, muchas aplicaciones, especialmente aplicaciones grandes como Office, se mantendrán firmemente distribuidas en todo el sistema operativo.
¿Tienes algo que agregar a la explicación? Apague el sonido en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange con experiencia en tecnología? Echa un vistazo a la discusión completa aquí.