Convenção de nomenclatura de arquivos para imagens armazenadas no controle de versão?


9

Meu aplicativo possui um arquivo de ícone que é armazenado no controle de versão. Agora amanhã eu posso decidir mudar o ícone. Estou debatendo entre duas convenções de nomenclatura possíveis para o arquivo de ícone:

  1. Mantenha o nome do arquivo fixo, por exemplo, application.ico
  2. Faça com que o nome do arquivo reflita a natureza da imagem, por exemplo, happyface.ico

A opção 1 não diz qual é o arquivo. Poderia dar a ilusão de que duas imagens totalmente diferentes são "versões" diferentes da mesma coisa. Com a opção 2, eu não apenas teria que adicionar um novo arquivo e excluir o antigo, mas também modificar o arquivo de recurso para refletir o novo nome de arquivo do ícone.

Em um ângulo relacionado, mas diferente:

Um site com uma imagem de cabeçalho. O nome do arquivo header.jpg ou sunrise-family-smiling.jpg?

Os nomes dos arquivos de imagem devem refletir sua função no aplicativo ou seu conteúdo? Qual seria a melhor prática para isso?

Respostas:


11

A opção 1 não diz qual é o arquivo. Pode dar a ilusão de que duas imagens muito diferentes são de alguma forma "versões" diferentes da mesma coisa

Bem, é, não é? Sei que ele pode ter mudado de um rosto sorridente para um logotipo corporativo, mas ainda são diferentes versões de um ícone específico no seu aplicativo.

Eu acho que você está perdendo o foco, concentrando-se na subversão. O principal fator de decisão deve ser o próprio aplicativo. Quando adiciono o ícone que aparece na barra de título, não estou pensando "Devo descrever o conteúdo da imagem". Estou pensando "o que é essa imagem no aplicativo ou em alguém que precise alterá-lo mais tarde?"

E aí reside um ponto maior. Quando for alterá-lo mais tarde, realmente quero alterar o nome da imagem no aplicativo? Ainda está fazendo a mesma coisa, então por que o aplicativo precisa saber que eu mudei?


4

Pessoalmente, sempre usei um nome descritivo para todos os meus arquivos, incluindo ícones, e mesmo se os nomes dos recursos precisarem ser alterados.

No seu caso, eu realmente faria uma terceira opção:

  • Se o aplicativo fosse chamado XYZZY, eu nomearia o ícone do aplicativo "XYZZY.ico". Independentemente da aparência do ícone, é o ícone apropriado para o aplicativo XYZZY.

Por extensão, se eu precisasse de alguns ícones de tamanhos diferentes, adicionaria o tamanho do ícone ao nome. Portanto, para um ícone de 48x48, eu teria "XYZZY_48x48.ico".

Em relação à última parte "Um site com uma imagem de cabeçalho. O nome do arquivo header.jpg ou sunrise-family-smiling.jpg?": Se o site for da Plugh Corp, eu usaria "Plugh_Header.jpg".


3
Adicionar o nome do aplicativo ao nome do arquivo é um pouco redundante, pois todos os arquivos residem em uma pasta chamada XYZZY e, portanto, a empresa pode ser determinada a partir disso. Você nomeia a página inicial como XYZZY_index.htm? Então, por que fazer isso com imagens?
Gavin Coates

4

Eu iria application.icoe header.jpgcomo é mais simples e mais próximo do significado da imagem no seu aplicativo .

Convém armazenar as imagens como happyface.icoe sunrise-family-smiling.jpgem outro lugar (em outro repositório ou talvez no mesmo) se quiser mantê-las facilmente acessíveis também.


2

Outra coisa a ter em mente: se esse for um aplicativo da Web, você desejará alterar o nome do arquivo, mesmo que a imagem não mude fundamentalmente, simplesmente porque isso força os navegadores dos usuários a carregar a nova versão em vez de usar a antiga cache.

Das práticas recomendadas do Yahoo para acelerar seu site :

Lembre-se de que, se você usar um cabeçalho Expires no futuro, precisará alterar o nome do arquivo do componente sempre que o componente for alterado. No Yahoo! geralmente fazemos essa etapa parte do processo de criação: um número de versão é incorporado ao nome do arquivo do componente, por exemplo, yahoo_2.0.6.js.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.