Pagina inicial » como » Por que todos os aplicativos não são portáteis?

    Por que todos os aplicativos não são portáteis?

    É uma pergunta que incomoda qualquer um que tenha se apaixonado por aplicativos portáteis: por que não todos aplicações portáteis?

    A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas da comunidade..

    A questão

    Leitor de superusuário Tom adora a organização limpa que os aplicativos portáteis oferecem e quer saber por que tudo não é portátil:

    Eu recentemente tentei 'instalar' coisas muito menos na minha máquina Windows (eu odeio instaladores - eu preciso saber onde os programas colocam coisas…), optando por usar versões portáteis ou autônomas de aplicativos.

    Eu coloquei todos eles em um diretório 'Programas' em uma unidade separada da minha partição do Windows, assim sempre que eu reinstalar, eu tenho todos os meus aplicativos disponíveis com o mínimo de esforço e no lado positivo, eu recebo uma configuração limpa agradável.

    Aplicativos como Office e Creative Suite ainda exigem que eu passe por um processo de instalação horrivelmente longo, onde milhares de bibliotecas e ferramentas aleatórias são lançadas em meu sistema.

    Por que os aplicativos do Windows ainda precisam ser instalados? Por que não podemos simplesmente arrastar o Photoshop para uma pasta à OSX e simplesmente fazer com que funcione? Alguém mais se concentra em aplicativos portáteis, ou eu estou apenas sendo OCD sobre a coisa toda?

    Nós certamente somos fãs de aplicativos portáteis e também gostaríamos de chegar ao fundo das coisas.

    A resposta

    O colaborador do SuperUser, David Whitney, oferece algumas dicas sobre por que muitos aplicativos não são portáteis e como o Windows impõe uma espécie de acordo anti-portabilidade:

    Os instaladores são o resultado de anos de evolução e um pouco da história (simplificada) ajuda a entender por que eles fazem o que fazem…

    O modelo do Windows 3.1 sugeriu arquivos de configuração no estilo config.ini por aplicativo com suporte a bibliotecas compartilhadas que entram em pastas do sistema para evitar duplicação e desperdício de espaço em disco.

    O Windows 95 introduziu o registro, permitindo um armazenamento central para a configuração de aplicativos, substituindo muitos arquivos de configuração. Mais importante, a configuração do Windows foi armazenada no mesmo local.

    O registro tornou-se inchado devido a aplicativos não limpando depois de si mesmos. O inferno da DLL aconteceu como resultado de várias versões das mesmas bibliotecas compartilhadas substituindo umas às outras.

    .A NET introduziu o conceito de app.config (quase dois arquivos ini marca 2, desta vez com um pouco mais de estrutura, poupando os desenvolvedores perdendo tempo escrevendo analisadores manuais). O GAC foi introduzido para assemblies compartilhados de versão em uma tentativa de impedir o Inferno da DLL.

    No Windows XP e mais no Vista, a Microsoft tentou definir o espaço do usuário como um local para armazenar dados do usuário e arquivos de configuração em um único local padrão para permitir perfis móveis e fácil migração (apenas copie seu perfil) com os aplicativos instalados em Arquivos de Programas..

    Então, eu acho que a razão é que “aplicativos no Windows são projetados para viver em um lugar, suas dependências compartilhadas em outro e os dados específicos do usuário em outro”, o que praticamente funciona contra o conceito de xcopying em um único local.

    … E isso antes de configurar contas de usuário, configurar e garantir permissões de segurança, baixar atualizações e instalar serviços do Windows…

    xcopy é o “caso simples” e certamente não é o melhor para tudo.

    Infelizmente para os fãs de todas as coisas portáteis, muitos aplicativos - especialmente aplicativos grandes como o Office - permanecerão firmemente fixados e distribuídos em todo o sistema operacional.


    Tem algo a acrescentar à explicação? Soe fora nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.