2012-10-17 3 views
5

Beim Schreiben von Bibliotheken habe ich alle meine String-Literale in die Ressourcendatei verschoben, auch wenn sie für Endbenutzer nie sichtbar sind und ich keine Notwendigkeit dafür habe Übersetzen des Literals für andere Entwickler profitieren (da die Bibliotheken nur von einem Team entwickelt werden).Literal- oder Ressourcendatei für Nicht-Benutzertext

Kürzlich fragte jemand, der einen Codeüberblick machte, warum ich einige Strings für eine Ausnahmemeldung (die der Endbenutzer nie sehen wird) in die Ressourcendatei geschrieben habe. Ich nehme an, weil wir wissen, dass diese Zeichenfolge nicht übersetzt werden muss.

Ich persönlich mag es, weil ich oft gefunden habe, dass die Zeichenfolge mehrere Stellen benötigt wird, und es funktioniert auf die gleiche Weise wie eine Konstante, da das Resx eine Codedatei für mich generiert hat, also ich nicht Ich muss es selbst pflegen.

Ich würde gerne wissen, ob es Standardkonventionen, Best Practices oder offizielle Richtlinien gibt. Denken Sie daran, dass dies nur für Nachrichten wie string gilt, andere Strings, die geeigneter wären als Konstanten, die ich als Konstanten erzeuge, also spreche ich nur über Ausnahmemeldungen oder Meldungen, die auf etwas wie log4net geloggt werden.

+0

Dies ist eine ziemlich subjektive Frage; Letztendlich würde ich sagen, dass es sich um eine Frage von Stil und/oder internen Code Richtlinien handelt. Es gibt keine "richtige" oder "falsche" Antwort. –

+0

Ich frage speziell, ob jemand weiß, ob es Branchenrichtlinien oder bewährte Standardverfahren gibt, die implementiert wurden. Wenn nicht, wird das auch eine akzeptable Antwort sein. Ich suche nicht nach den Meinungen der Leute zu diesem Thema. – Andy

Antwort

2

Die Verwendung von Ressourcen für Zeichenfolgenliterale bietet viele Vorteile. Ich habe oft herausgefunden, dass sie großartig sind, um Fehler-/Erfolgs-/Validierungsnachrichten zu aggregieren. Wenn ein Produkt fertiggestellt werden soll, ist es üblich, alle Nachrichten zu sammeln, damit Sie Helpdesk trainieren können, um Fragen zu beantworten, die auf den Benutzern basieren.

Zu diesem Zweck bieten Ressourcen eine einfach zugängliche zentralisierte Ressource, um alle Ihre Nachrichten an den Endbenutzer zu verwalten.

Wenn Sie die für eine bestimmte Bedingung verwendete Sprache ändern möchten, ist es viel einfacher, einen Ressourcenstandort zu ändern und die gesamte Bibliothek/App zu beeinflussen. Andernfalls müssen Sie eine Suche durchführen/ersetzen, und ein neuer Entwickler, der in ein Projekt geworfen wird, aktualisiert möglicherweise nur einen Ort und vermisst die anderen Orte.

+0

Ich stimme zu, aber meine Frage betrifft eher branchenweit anerkannte Best Practices zur Konsolidierung dieser Art von Nachrichten in Ressourcendateien. – Andy

+0

@Andy Da Ressourcendateien .net spezifisch sind, bin ich mir nicht sicher, was Sie mit industrieweit meinen. Ich kenne keine Standards, die sich speziell auf den Umgang mit Literalen beziehen. Im Allgemeinen sind DRY und gute Abstraktionen die Grundlage für die Verwendung von Ressourcendateien. – Candide

+0

Ich meine, ist es mehr oder weniger dokumentiert als eine Best Practice unter der .Net-Entwicklungsgemeinschaft, oder gibt es irgendwelche Richtlinien von MS. – Andy