Wenn Entwickler von "Protokollen" sprechen, beziehen sie sich meistens auf einfache Textdateien, die Informationen enthalten, die außerhalb des Kontexts des spezifischen Codes, der sie protokolliert hat, bedeutungslos sind und keinen anderen Zweck haben als die Fehlerbehebung bei diesem Code, wenn etwas schief geht.
Wenn Entwickler von "Internationalisierung" sprechen, meinen sie meistens "wenn der Benutzer ein Sprecher der Sprache X ist, verwenden Sie die in Sprache X übersetzte Zeichenfolge anstelle der Standardzeichenfolge".
Angesichts dieser spezifischen Definitionen sind internationalisierte Protokolle fast immer eine schlechte Idee , weil:
Üblicherweise wird der Satz von Sprachen , dass alle Ihre Entwickler fließend sprechen kann , ist viel kleiner als die Menge der Sprachen , dass jeder Ihrer Benutzer sein könnten Muttersprachler. Wenn Sie also Protokolle internationalisieren, ist es wahrscheinlicher als nicht , dass Ihre Entwickler nicht in der Lage sein, sie zu verstehen.
Normalerweise sind die meisten Ihrer Benutzer keine aktiven Betreuer der von ihnen verwendeten Software. Daher könnten Ihre nicht englischsprachigen Kunden die Protokolle nicht verstehen, selbst wenn sie internationalisiert wären, da sich die meisten Protokollnachrichten auf bestimmte Codeteile und verschiedene Implementierungsdetails beziehen, die sie einfach nicht tun und sollten jemals darüber Bescheid wissen.
Durch die Internationalisierung einer Nachricht wird die Möglichkeit, Textsuchen für diese Nachricht durchzuführen, vollständig zunichte gemacht, sei es Entwickler, die ihren Code durchsuchen, oder Benutzer, die im Internet nach Problemumgehungen suchen.
Die Internationalisierung führt zu Übersetzungsfehlern oder subtilen Unklarheiten, die im Zusammenhang mit der Fehlerbehebung bei Software völlig inakzeptabel sind. Dies ist das gleiche Problem wie das Protokollieren von Zeitstempeln ohne explizite Zeitzone. Sie müssen ständig Zeit damit verschwenden, herauszufinden, was es tatsächlich bedeutet.
Wenn wir die Definitionen und Annahmen, mit denen ich begonnen habe, lockern, gibt es natürlich einige gültige Anwendungsfälle.
Im Allgemeinen sind "internationalisierte Protokolle" möglicherweise nützlich, wenn es eine leicht identifizierbare Teilmenge von Protokollnachrichten gibt , die für den durchschnittlichen Benutzer von Bedeutung sind, und wenn "Internationalisierung" neben dem Standard-Sprachprotokoll für die Entwickler ein separates Protokoll in der Sprache des Benutzers bedeutet .
Wenn in der Praxis etwas, das Sie als "internationalisiertes Protokoll" bezeichnen könnten, tatsächlich nützlich ist, ist es wahrscheinlich ohnehin eine Funktion der Anwendung.
Einige Arten von Videospielen tun dies, insbesondere solche, die sich wie Brettspiele verhalten:
Quelle: Blood Bowl, Screenshot von https://www.youtube.com/watch?v=UyQB4kDMZzE
Wenn die "Protokolle" als äußerst nützlich oder als wichtige Funktion angesehen werden, landen sie eher in einer geeigneten Datenbank als in bloßen Textdateien. Sales Tracking Software ist ein typisches Beispiel dafür:
Quelle: http://www.everlogic.com/i-want-to/see-screenshots/
Unabhängig davon, ob Sie diese "Protokolle" nennen würden oder nicht, der Text, den Sie in diesen Bildern sehen, ist eindeutig etwas, das wir internationalisieren möchten, wenn wir diese Probleme beibehalten würden.