Dateinamenskonvention für Bilder, die in der Versionskontrolle gespeichert sind?


9

Meine Anwendung verfügt über eine Symboldatei, die in der Versionskontrolle gespeichert ist. Morgen könnte ich mich entscheiden, das Symbol zu ändern. Ich diskutiere zwischen zwei möglichen Namenskonventionen für die Symboldatei:

  1. Behalten Sie den Dateinamen bei, z. B. application.ico
  2. Lassen Sie den Dateinamen die Art des Bildes widerspiegeln, z. B. happyface.ico

Option 1 sagt nicht, was die Datei ist. Es könnte die Illusion geben, dass zwei wild unterschiedliche Bilder irgendwie unterschiedliche "Versionen" derselben Sache sind. Mit Option 2 müsste ich nicht nur eine neue Datei hinzufügen und die alte löschen, sondern auch die Ressourcendatei ändern, um den neuen Dateinamen des Symbols wiederzugeben.

Auf einem verwandten, aber anderen Blickwinkel:

Eine Website mit einem Header-Bild. Ist der Dateiname header.jpg oder sunrise-family-smile.jpg?

Sollten Bilddateinamen ihre Funktion in der Anwendung oder ihren Inhalt widerspiegeln? Was wäre eine Best Practice dafür?

Antworten:


11

Option 1 sagt nicht, was die Datei ist. Es könnte die Illusion geben, dass zwei wild unterschiedliche Bilder irgendwie unterschiedliche "Versionen" derselben Sache sind

Nun, ist es nicht wahr? Ich weiß, dass es sich möglicherweise von einem Smiley zu einem Unternehmenslogo geändert hat, aber es sind immer noch verschiedene Versionen eines bestimmten Symbols in Ihrer Anwendung.

Ich denke, Sie verpassen den Punkt, indem Sie sich auf Subversion konzentrieren. Der entscheidende Faktor sollte die Anwendung selbst sein. Wenn ich das Symbol in der Titelleiste hinzufüge, denke ich nicht, dass ich den Inhalt des Bildes beschreiben muss. Ich denke: "Was ist dieses Bild für die Anwendung oder für andere, die es später ändern müssen?"

Und darin liegt ein größerer Punkt. Wenn ich es später ändern möchte, möchte ich dann wirklich den Namen des Bildes in der Anwendung ändern? Es macht immer noch dasselbe. Warum muss die App wissen, dass ich es geändert habe?


4

Persönlich habe ich immer einen beschreibenden Namen für alle meine Dateien verwendet, einschließlich der Symbole, und selbst wenn die Ressourcennamen geändert werden müssen.

In Ihrem Fall würde ich tatsächlich eine dritte Wahl treffen:

  • Wenn die Anwendung XYZZY heißt, würde ich das Symbol für die Anwendung "XYZZY.ico" nennen. Unabhängig davon, wie das Symbol aussieht, ist es das richtige Symbol für die XYZZY-Anwendung.

Wenn ich ein paar Symbole unterschiedlicher Größe benötige, würde ich dem Namen die Größe des Symbols hinzufügen. Für ein 48x48-Symbol hätte ich also "XYZZY_48x48.ico".

In Bezug auf den letzten Teil "Eine Website mit einem Header-Bild. Ist der Dateiname header.jpg oder sunrise-family-smile.jpg?": Wenn die Website für Plugh Corp ist, würde ich "Plugh_Header.jpg" verwenden.


3
Das Hinzufügen des Namens der Anwendung zum Dateinamen ist geringfügig redundant, da sich sicherlich alle Dateien in einem Ordner mit dem Namen XYZZY befinden und daher das Unternehmen daraus ermittelt werden kann. Nennen Sie die Homepage XYZZY_index.htm? Warum dann für Bilder?
Gavin Coates

4

Ich würde mich dafür entscheiden application.icound header.jpgda es einfacher und näher an der Bildbedeutung in Ihrer Anwendung ist .

Möglicherweise möchten Sie die Bilder als happyface.icound an einem sunrise-family-smiling.jpganderen Ort speichern (in einem anderen Repo oder möglicherweise im selben), wenn Sie sie auch leicht zugänglich halten möchten.


2

Beachten Sie auch Folgendes: Wenn es sich um eine Webanwendung handelt, möchten Sie den Dateinamen ändern, auch wenn sich das Bild nicht grundlegend geändert hat, da die Browser der Benutzer gezwungen sind, die neue Version zu laden, anstatt die alte Version von zu verwenden Zwischenspeicher.

Aus den Best Practices von Yahoo zur Beschleunigung Ihrer Website :

Beachten Sie, dass Sie den Dateinamen der Komponente bei jeder Änderung der Komponente ändern müssen, wenn Sie einen Expires-Header für die ferne Zukunft verwenden. Bei Yahoo! Wir machen diesen Schritt oft Teil des Erstellungsprozesses: Eine Versionsnummer ist in den Dateinamen der Komponente eingebettet, z. B. yahoo_2.0.6.js.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.