Convenzione sulla denominazione dei file per le immagini archiviate nel controllo versione?


9

La mia applicazione ha un file icona memorizzato nel controllo versione. Ora domani potrei decidere di cambiare l'icona. Sto discutendo tra due possibili convenzioni di denominazione per il file icona:

  1. Mantieni il nome file fisso, ad es. Application.ico
  2. Chiedi al nome file di riflettere la natura dell'immagine, ad esempio happyface.ico

L'opzione 1 non dice quale sia il file. Potrebbe dare l'illusione che due immagini selvaggiamente diverse siano in qualche modo "versioni" diverse della stessa cosa. Con l'opzione 2, non dovrei solo aggiungere un nuovo file ed eliminare quello vecchio, dovrei modificare il file di risorse per riflettere il nuovo nome file dell'icona.

Da un'angolazione correlata ma diversa:

Un sito Web con un'immagine di intestazione. Il nome file è header.jpg o sunrise-family-smiling.jpg?

I nomi dei file di immagine devono riflettere la loro funzione nell'applicazione o il loro contenuto? Quale sarebbe la migliore pratica per questo?

Risposte:


11

L'opzione 1 non dice quale sia il file. Potrebbe dare l'illusione che due immagini selvaggiamente diverse siano in qualche modo diverse "versioni" della stessa cosa

Beh, lo è, vero? So che potrebbe essere cambiato da una faccina in un logo aziendale, ma sono ancora versioni diverse di un'icona specifica nella tua applicazione.

Penso che ti manchi il punto concentrandoti sulla sovversione. Il fattore decisivo chiave dovrebbe essere l'applicazione stessa. Quando aggiungo l'icona che appare nella barra del titolo, non penso "Devo descrivere il contenuto dell'immagine". Sto pensando "che cos'è questa immagine per l'applicazione o per chiunque altro abbia bisogno di cambiarla in un secondo momento?"

E qui sta un punto più grande. Quando vengo a cambiarlo in un secondo momento, voglio davvero cambiare il nome dell'immagine nell'applicazione? Sta ancora facendo la stessa cosa, quindi perché l'app deve sapere che l'ho cambiata?


4

Personalmente, ho sempre usato un nome descrittivo per tutti i miei file, comprese le icone, e anche se i nomi delle risorse devono essere cambiati.

Nel tuo caso, prenderei davvero una terza scelta:

  • Se l'applicazione si chiamasse XYZZY, allora denominerei l'icona per l'applicazione "XYZZY.ico". Indipendentemente dall'aspetto dell'icona, è l'icona corretta per l'applicazione XYZZY.

Per estensione, se avessi bisogno di un paio di icone di dimensioni diverse, aggiungerei la dimensione dell'icona al nome. Quindi per un'icona 48x48, avrei "XYZZY_48x48.ico".

In relazione all'ultima parte "Un sito Web con un'immagine di intestazione. È il nome file header.jpg o sunrise-family-smiling.jpg?": Se il sito Web è per Plugh Corp, allora utilizzerei "Plugh_Header.jpg".


3
L'aggiunta del nome dell'applicazione al nome del file è leggermente ridondante, poiché sicuramente tutti i file risiederanno in una cartella denominata XYZZY, e quindi la società può essere determinata da quello. Denominate la home page XYZZY_index.htm? Allora perché farlo per le immagini?
Gavin Coates,

4

Vorrei andare application.icoe header.jpgcome è più semplice e più vicino al significato dell'immagine nella tua applicazione .

Potresti voler archiviare le immagini come happyface.icoe sunrise-family-smiling.jpgda qualche altra parte (in un altro repository o forse nello stesso) se vuoi mantenerle facilmente accessibili.


2

Un'altra cosa da tenere a mente: se si tratta di un'applicazione Web, ti consigliamo di cambiare il nome del file anche se l'immagine non è cambiata sostanzialmente semplicemente perché ciò costringe i browser degli utenti a caricare la nuova versione anziché utilizzare quella vecchia da cache.

Dalle migliori pratiche di Yahoo per velocizzare il tuo sito Web :

Tieni presente che se usi un'intestazione Expires molto futura devi cambiare il nome del file del componente ogni volta che il componente cambia. A Yahoo! spesso facciamo questo passaggio parte del processo di compilazione: un numero di versione è incorporato nel nome del file del componente, ad esempio yahoo_2.0.6.js.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.