Número da versão como parte de um nome de arquivo

14

Vejo que alguns softwares têm o número da versão incluído como parte do nome do arquivo, enquanto outros não. Eu estou mais acostumado com o último tipo, e eu acho que é mais popular, mas eu vejo o primeiro tipo às vezes em bibliotecas javascript. Por exemplo, o nome do arquivo do jQuery é como jquery-2.1.0.js em vez de jquery.js . Sempre que eu atualizo esses tipos de arquivos, tenho que procurar os locais em outros programas que carregam esses arquivos e alterar o nome de arquivo a que eles se referem e excluir manualmente a versão mais antiga dessas bibliotecas. Isso é inconveniente para mim, então prefiro renomear o arquivo para excluir o número da versão e manter o nome do arquivo referido para não incluir o número da versão.

Eu suspeito que esses números são para algum tipo de controle de versão, mas não estou claro quando e como eles são usados.

  • Quais são os prós e contras de incluir números de versão no nome do arquivo?
  • Existe consenso de fato sobre quais áreas de software ou idiomas usam o número da versão no nome do arquivo e quais áreas / idiomas não usam? Se assim for, há alguma razão para isso?
por sawa 12.03.2014 / 11:52
fonte

2 respostas

24
  1. Faz sentido especificar a versão desejada. O comportamento em que você pode confiar pode ter mudado, portanto, nem sempre mais novo é melhor. Primeiro, teste se uma nova versão de uma biblioteca funciona para você. Em seguida, atualize explicitamente.

  2. No caso de recursos da web, ter a versão como parte do nome do arquivo é importante no contexto do armazenamento em cache . Para recursos estáticos como jquery.js , você precisará de um tempo de cache muito longo antes de ser reavaliado. No entanto, durante uma atualização, você deseja que seu código use a nova versão imediatamente , em vez de alternar os clientes para a nova versão durante o próximo dia. Como foo-1.2.3.js é um recurso diferente como foo-1.2.4.js , nenhum caches atrapalhará.

por 12.03.2014 / 12:12
fonte
3

(Excluindo a situação do cache da Web mencionado por @amon): Suponho que você faça uma cópia local de uma biblioteca de terceiros para uso do seu programa, caso contrário, a necessidade de um número de versão seria óbvia. O cenário de uso de tal biblioteca de terceiros dentro do sistema de software que você está desenvolvendo pode ser um desses dois:

  • todas as partes do seu programa que estão usando o lib devem sempre compartilhar a mesma versão do lib (idealmente "o mais novo"), e você vai atualizar o lib de tempos em tempos. Em seguida, manter o número da versão como parte do nome do arquivo pode ser realmente entediante e, na verdade, recomendo remover o número da sua cópia local do arquivo, se possível. Observe que essa é apenas uma boa ideia se você tiver certeza de que o fornecedor terceirizado mantém a biblioteca basicamente compatível com versões anteriores.

  • você espera ter algumas partes do seu programa que precisam da versão A e outras que precisam da versão B. Então, obviamente, você precisará de um número de versão para a biblioteca de terceiros. Note que esta situação também pode ocorrer quando você não pode facilmente testar todas as suas partes de software usando a biblioteca de uma só vez depois de introduzir uma nova versão.

E se você for um vendedor de bibliotecas, você deve incluir o número da versão por padrão, mas deixe que o usuário de tal biblioteca decida por si mesmo se ele mantém esse número ou o retira.

    
por 12.03.2014 / 16:59
fonte