← Alle Kurse
UI · Kostenloser Kurs

Lokalisierung in Wisej.NET

Eine Anwendung, die für ein einziges Büro geschrieben wurde, erkennt man sofort: Jede Überschrift und jeder Button ist eine englische Zeichenfolge direkt im Code, und Beträge und Datumsangaben erscheinen so, wie der Server sie formatiert. Dieser Einsteigerkurs zeigt Ihnen, wie Sie diesen Text aus dem Code herausholen und jeden Wert in der Form anzeigen, die die Kultur der Benutzerin oder des Benutzers erwartet – aufgebaut rund um GlobalDesk, einen kleinen mehrsprachigen Service Desk mit lokalisiertem Dashboard, Kundeneditor, Kontakt-Grid und Sprachauswahl. Sieben Module beginnen bei den Grundlagen – Kulturnamen, .resx-Dateien, ResourceManager, Rückfall auf die neutrale Ressource und stabile semantische Schlüssel – und gehen dann weiter zur Lokalisierung im Visual Studio Designer mit der Eigenschaft Localizable und dem Language-Selektor, zu gemeinsam genutzten Anwendungsressourcen, zu Platzhaltern, die mit der aktiven Kultur formatiert werden, und zu den Systembeschriftungen von Wisej.NET. Von dort setzen Sie die Sitzungskultur aus der Browsersprache, behandeln Application.CultureChanged, um nachzuziehen, was der Wechsel zurückgelassen hat, lassen Layouts eine Sprache überstehen, die von rechts nach links geschrieben wird, und ebenso deutlich längere Übersetzungen, organisieren Übersetzungen als Teamarbeit mit dem ResX Resource Manager und schließen mit einem LocalizationService, Pseudo-Lokalisierung und einer Lokalisierungs-Testmatrix im Abschlussprojekt ab. Gedacht ist er für Entwicklerinnen und Entwickler, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen.

Erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links.

Kostenlosen Kurs starten

Auch verfügbar auf: EnglishFrançaisItalianoEspañol

Lehrplan

Modul 1: Grundlagen der Lokalisierung: Kultur, Sprache und Ressourcen

Modul 1 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zu den Lokalisierungsgrundlagen an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Was Lokalisierung über die reine Übersetzung hinaus tatsächlich umfasst: Kulturnamen wie en, de-DE und fr-CA, .resx-Ressourcendateien, die über den ResourceManager gelesen werden, der .NET-Kulturrückfall auf die neutrale Ressource, stabile semantische Schlüssel statt englischer Sätze im Code und die kultursensible Formatierung von Datum, Zahlen und Währung. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionKultur, Ressourcen und der Text, den Sie niemals fest im Code verdrahten dürfen · 14 Min.

    Kultur, Ressourcen und der Text, den Sie niemals fest im Code verdrahten dürfen – ein geführter Video-Walkthrough zu Modul 1, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Lokalisierung in Wisej.NET, Modul eins. GlobalDesk ist ein Service-Desk, geschrieben für genau ein Büro. Daraus eine Anwendung zu machen, die mehrere Standorte nutzen können, beginnt mit zwei getrennten Aufgaben.

    Hart codiertes Englisch ist nur das halbe Problem. Wer einen Betrag baut, indem er ein Dollarzeichen vor eine Zahl setzt, nagelt die Konvention eines einzigen Landes im Code fest, und keine Übersetzungsdatei macht das je rückgängig. Wisej.NET nutzt hier das Standardmodell von .NET: Ressourcendateien, CultureInfo und ResourceManager.

    Ein Kulturname verbindet eine Sprache mit einer Region. Englisch allein ist reine Sprache. Englisch für die Vereinigten Staaten, Deutsch für Deutschland und Französisch für Kanada ergänzen jeweils regionale Konventionen. Die Sprache entscheidet über die Wörter, die Kultur darüber, wie Datum, Zahlen und Beträge geschrieben werden.

    Ressourcendateien stapeln sich. Eine Suche prüft zuerst die spezifischste Datei, dann die reine Sprachdatei und zuletzt die neutrale. Weil die neutrale Datei die letzte Station ist, muss sie vollständig sein: Was dort fehlt, hat nichts mehr, worauf es zurückfallen kann.

    Im Code heißt das: zwölf semantische Schlüssel in der neutralen Ressourcendatei und ein ResourceManager, aufgebaut aus Basisname und Assembly. Ein Helper gibt den Schlüssel in eckigen Klammern zurück, wenn nichts gefunden wird. So wird eine Lücke zu etwas Lesbarem auf dem Bildschirm statt zu einem leeren Label, das niemandem auffällt.

    Jetzt die Umschreibung. Eine Methode setzt Wörter auf den Bildschirm, indem sie jede Beschriftung über ihren Schlüssel nachschlägt. Eine zweite formatiert ein Datum, eine Zahl und einen Betrag mit der aktuellen Kultur im Moment der Anzeige. Die gespeicherten Werte selbst bleiben unberührt und neutral.

    Beim Ausführen lösen sich alle Beschriftungen auf, bis auf eine, und diese erscheint als ihr Schlüssel in eckigen Klammern. Die Lücke ist sichtbar statt stumm. Ergänzen Sie den fehlenden Schlüssel, und alle drei Vorschauwerte folgen der Kultur dieser Sitzung.

    Zwei Browser gegen einen Serverprozess, einer auf Englisch, einer auf Deutsch, zeigen denselben Code, dieselben Schlüssel und dieselbe gespeicherte Dezimalzahl in zwei Schreibweisen. Das gelingt, weil die Kultur zur Sitzung gehört und niemals zu einem statischen Feld, das alle teilen.

    Lab eins: Bauen Sie das GlobalDesk-Dashboard auf einer neutralen Ressourcendatei, ergänzen Sie den Texthelfer, der einen fehlenden Schlüssel markiert, fügen Sie das Kulturvorschau-Panel hinzu und schreiben Sie die Notiz, die Daten von Darstellung trennt.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 1 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Ressourcenschlüssel und kulturbewusste Formatierung · 45 Min.

    Ziel: Erstellen Sie die GlobalDesk-Dashboard-Seite mit einer Willkommensüberschrift, einer Navigationsschaltfläche Customers und einem kleinen Vorschaubereich für die Kultur. Fügen Sie Resources/Strings.resx als neutrale Ressource mit mindestens zwölf stabilen semantischen Schlüsseln wie Navigation.Customers und CustomerEditor.Save hinzu, schreiben Sie einen statischen Texts-Helper über Wisej.Resources.ResourceManager, der bei einem fehlenden Schlüssel eine in Klammern gesetzte Markierung zurückgibt, und ersetzen Sie jede fest verdrahtete Beschriftung auf der Seite durch einen Texts.Get-Aufruf. Füllen Sie anschließend den Vorschaubereich mit echten Werten: Formatieren Sie das heutige Datum, eine Menge und einen Währungsbetrag mit Application.CurrentCulture, statt die Zeichenfolgen von Hand zusammenzusetzen, und schließen Sie mit einer kurzen Lab-Notiz ab, die den gespeicherten Wert von seiner kultursensiblen Darstellung trennt. Ergebnisse: GlobalDesk-Dashboard-Seite, deren Beschriftungen alle aus Ressourcenschlüsseln stammen, ohne fest verdrahteten sichtbaren Text; neutrale Datei Resources/Strings.resx mit mindestens zwölf stabilen semantischen Schlüsseln; Texts-Helper über Wisej.Resources.ResourceManager, der einen fehlenden Schlüssel markiert, statt eine leere Zeichenfolge zurückzugeben; Vorschaubereich für die Kultur, der ein Datum, eine Zahl und einen Währungsbetrag mit Application.CurrentCulture formatiert; Lab-Notiz, die erklärt, welche Werte Daten sind und welche kultursensible Darstellung.

Modul 2: Die Wisej.NET-Oberfläche im Visual Studio Designer lokalisieren

Modul 2 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zur Lokalisierung im Designer an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Lokalisierung im Designer auf einem Wisej.NET-Container der obersten Ebene: die Eigenschaft Localizable, der Language-Selektor des Designers, die Eigenschaften, die sich je Sprache legitim unterscheiden dürfen – etwa Text, Size, Location, Farben und Bilder –, die Ressourcendateien, die der Designer erzeugt, und die Regel, dass Designer-Ressourcen beim Erstellen der Controls angewendet werden. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionLocalizable, der Language-Selektor und was der Designer schreibt · 14 Min.

    Localizable, der Language-Selektor und was der Designer schreibt – ein geführter Video-Walkthrough zu Modul 2, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Modul zwei, das Lokalisieren eines Bildschirms, der gezeichnet und nicht geschrieben wurde. Der GlobalDesk-Kundeneditor wurde im Visual Studio Designer angeordnet, und Deutsch braucht andere Wörter und, wie sich zeigt, eine andere Geometrie.

    Beschriftungen, die nur im Designer leben, sind für einen Übersetzer unerreichbar. Eine deutsche Beschriftung passt nicht in einen Button, der für die englische bemessen wurde. Und jeden Button auf die längste je ausgelieferte Sprache zu verbreitern, ruiniert das Layout für die Sprache, die die meisten Ihrer Benutzer tatsächlich lesen.

    Sechs Schritte. Stellen Sie zuerst das neutrale Layout fertig. Setzen Sie das Formular auf lokalisierbar. Wählen Sie die Sprache. Ändern Sie nur den Unterschied. Führen Sie die Anwendung unter dieser Kultur aus. Kehren Sie dann zu neutral zurück, bevor Sie etwas Strukturelles anfassen, denn Strukturänderungen gehören allein dem neutralen Layout.

    Der generierte Designer-Code behält nur die neutralen Werte; automatische Größe, Verankerung und Andocken erledigen die Layout-Arbeit. Text, Größe und Position für Deutsch landen stattdessen in generierten Ressourcendateien. Genau deshalb kann ein Übersetzer Dateien bekommen statt einer Entwicklungsumgebung.

    Die aktuelle Kultur gehört zur Sitzung, nie zu einem statischen Feld. Und weil Designer-Ressourcen beim Erstellen eines Controls gelesen werden, zeichnet ein Kulturwechsel einen bereits bestehenden Bildschirm nicht neu. Der Editor muss entfernt, freigegeben und neu aufgebaut werden, bevor er seine Ressourcen erneut liest.

    Entscheiden Sie über die Schicht, bevor Sie die Zeichenfolge anlegen. Text, Größe, Position, Farben und Bilder eines einzelnen gezeichneten Bildschirms gehören in dessen Designer-Ressourcen. Was der Code erzeugt und was mehrere Bildschirme teilen, gehört stattdessen in die gemeinsame Ressourcendatei.

    Läuft die Anwendung auf Deutsch, schneiden die Beschriftungen in einer Buttonbreite ab, die gegen das Englische bemessen wurde, bis die Größe nur für Deutsch überschrieben wird. Beweisen kann das der Browser, nicht die Entwurfsfläche, denn die Entwurfsfläche zeigt Ihnen das neutrale Layout.

    Ein Wechsel der Sitzungskultur zur Laufzeit lässt den offenen Editor auf Englisch stehen. Das bleibt so, bis die Neuaufbau-Aktion ihn freigibt und einen neuen erzeugt, der seine Ressourcen dann unter der neuen Kultur liest. Das ist die Regel der Erstellungszeit, direkt gesehen.

    Lab zwei: Machen Sie den Kundeneditor lokalisierbar, fügen Sie eine deutsche Variante mit je einer Größen- und einer Positionsüberschreibung hinzu, verhindern Sie das Abschneiden der Beschriftungen und belegen Sie die Regel der Erstellungszeit.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 2 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Localizable, der Language-Selektor und ein neu aufgebauter Editor · 45 Min.

    Ziel: Lokalisieren Sie den GlobalDesk-Kundeneditor über den Visual Studio Designer. Stellen Sie zuerst das neutrale englische Layout des UserControls CustomerEditor fertig, setzen Sie dann Localizable auf true und fügen Sie über den Language-Selektor des Designers eine deutsche Variante hinzu, wobei Sie nur ändern, was sich unterscheiden muss: die Beschriftungen, die Breite der beiden längsten Schaltflächen und die Location eines Labels. Führen Sie die Anwendung unter de-DE aus und vergleichen Sie die tatsächliche Browserausgabe mit der Designeransicht, und fügen Sie dann eine Schaltfläche Recreate editor hinzu, die das Control verwirft und neu aufbaut, damit Sie selbst sehen, warum Designer-Ressourcen einem Kulturwechsel zur Laufzeit nicht folgen. Schließen Sie mit einer Lab-Notiz ab, die die überschriebenen Eigenschaften auflistet und diejenigen, die Sie bewusst dem neutralen Layout überlassen haben. Ergebnisse: UserControl CustomerEditor mit Localizable auf true über einem vollständigen neutralen englischen Layout; deutsche Designer-Sprachvariante, die die Beschriftungen sowie mindestens eine Size- und eine Location-Angabe überschreibt; Anchoring, Docking oder AutoSize so eingesetzt, dass die deutschen Beschriftungen nicht abgeschnitten werden können; Schaltfläche Recreate editor, die den Container nach einem Kulturwechsel verwirft und neu aufbaut; Lab-Notiz mit den überschriebenen Eigenschaften und denen, die dem neutralen Layout überlassen wurden.

Modul 3: Anwendungsressourcen, ResourceManager und Wisej-Systemtexte

Modul 3 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zu den gemeinsamen Ressourcen an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Die gemeinsame Ressourcenschicht: neutrale und kulturspezifische .resx-Dateien mit identischen Schlüsseln, die Suche über Wisej.Resources.ResourceManager nach Basisname und Assembly, Platzhalter, die mit string.Format und der aktiven Kultur formatiert werden, Services, die Schlüssel statt englischer Sätze zurückgeben, und Resources-[LANG].resx für die Systembeschriftungen von Wisej. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin Schlüssel, zwei Ressourcendateien und die Beschriftungen von Wisej · 14 Min.

    Ein Schlüssel, zwei Ressourcendateien und die Beschriftungen von Wisej – ein geführter Video-Walkthrough zu Modul 3, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Lokalisierung in Wisej.NET, Modul drei, die gemeinsame Ressourcenschicht. Das ist der Text, der keinem gezeichneten Control gehört, zusammen mit den Beschriftungen, die Wisej.NET selbst zeichnet, in GlobalDesk.

    Modul zwei hat die Beschriftungen auf dem Bildschirm übersetzt. Die Speicherbestätigung, die Validierungsmeldungen, die Statuszeile und das Ergebnis eines Dienstes sind immer noch englische Literale im Code, und die Designer-Lokalisierung erreicht keines davon, weil kein Control sie besitzt.

    Die neutrale Ressourcendatei hält jeden Schlüssel. Die deutsche Datei liegt daneben, mit exakt denselben Schlüsseln und nur übersetzten Werten. Eine Suche geht von der spezifischsten Kultur über die reine Sprachdatei zur neutralen und nimmt den ersten Treffer. Genau das macht eine teilweise Übersetzung ungefährlich.

    Ein Ressourcen-Manager, aufgebaut aus Basisname und Assembly, steht hinter einem kleinen Helper, der bei einem fehlenden Wert den Schlüssel in eckigen Klammern zurückgibt statt einer leeren Zeichenfolge.

    Halten Sie jeden Satz ganz. Legen Sie den vollständigen Satz mit einem Platzhalter ab und formatieren Sie ihn für die aktuelle Kultur, statt übersetzte Fragmente im Code aneinanderzuhängen.

    Drei Schichten, drei Eigentümer. Designer-Ressourcen tragen den eigenen Text eines einzelnen Bildschirms. Die gemeinsame Zeichenfolgendatei trägt Produkttext, der überall vorkommt. Und eine eigene Ressourcendatei überschreibt die Beschriftungen, die Wisej.NET selbst liefert, etwa die Schaltflächen eines Standarddialogs.

    Der Speicherdienst gibt einen Schlüssel zurück statt eines englischen Satzes, und der Editor ist der einzige Ort, der ein Ergebnis in Worte verwandelt. Die Log-Zeile bleibt bewusst einsprachig, denn einem Entwickler, der um drei Uhr morgens ein Log liest, hilft eine übersetzte Meldung nicht.

    Führen Sie die Anwendung auf Englisch aus, dann auf Deutsch, und öffnen Sie dann eine Meldung, deren Bestätigungsschaltfläche aus Ihrer eigenen Überschreibung der Systembeschriftung kommt statt aus der Vorgabe des Frameworks. Löschen Sie einen Schlüssel aus der deutschen Datei, und die Suche fällt auf den neutralen Wert zurück, statt eine Leerstelle zu zeigen.

    Was Sie abgeben, ist die deutsche Datei mit identischen Schlüsseln, ein aus einem Platzhalter formatierter Satz, ein Dienst, der einen Schlüssel statt Prosa zurückgibt, eine überschriebene Wisej-Systembeschriftung und die Notiz über die drei Textarten.

    Lab drei: Fügen Sie die deutsche Zeichenfolgendatei hinzu, formatieren Sie den Platzhaltersatz für die aktive Kultur, geben Sie einen Ergebnisschlüssel aus dem Speicherdienst zurück und überschreiben Sie eine Systembeschriftung.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 3 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Strings.de.resx, Platzhalter und eine Systembeschriftung · 45 Min.

    Ziel: Erweitern Sie die gemeinsamen Ressourcen von GlobalDesk. Legen Sie Strings.de.resx neben Resources/Strings.resx an, mit exakt denselben Schlüsseln und übersetzten Werten, fügen Sie einen Eintrag Customer.LastOrder mit zwei Platzhaltern hinzu und bauen Sie den Satz mit string.Format und Application.CurrentCulture auf, statt Fragmente aneinanderzuhängen. Leiten Sie jede Meldung, die der Kundeneditor anzeigt, über den Texts-Helper, einschließlich der Speicherbestätigung und der beiden Validierungsmeldungen, und lassen Sie den Save-Service einen stabilen Ergebnisschlüssel wie CustomerEditor.Saved zurückgeben statt eines englischen Satzes, den die Oberfläche direkt ausgibt. Fügen Sie anschließend eine Datei Resources-de.resx hinzu, die eine Systembeschriftung von Wisej überschreibt, weisen Sie das in einer MessageBox nach und schreiben Sie eine kurze Notiz zum Unterschied zwischen Ihrem Produkttext und dem Systemtext von Wisej. Ergebnisse: Strings.de.resx mit denselben Schlüsseln wie die neutrale Datei und ausschließlich übersetzten Werten; Ressource Customer.LastOrder, mit string.Format und der aktiven Kultur aufgebaut, niemals zusammengehängt; Save-Service, der einen Ressourcenschlüssel oder Ergebniscode statt eines englischen Satzes zurückgibt; Resources-de.resx, die mindestens eine Systembeschriftung von Wisej überschreibt, nachgewiesen in einer MessageBox; Lab-Notiz, die Produkttext, Wisej-Systemtext und Diagnosetext voneinander trennt.

Modul 4: Browser-Kultur, Sitzungskultur und Sprachwechsel zur Laufzeit

Modul 4 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zur Kultur zur Laufzeit an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Woher die Kultur einer Sitzung kommt und was geschehen muss, wenn sie sich ändert: die Einstellung culture in Default.json, die automatische Browsererkennung, der URL-Parameter lang, Application.CurrentCulture als Zustand pro Sitzung, das Ereignis Application.CultureChanged und das erneute Anwenden ressourcengestützter Texte, damit kein halb übersetzter Bildschirm den Wechsel übersteht. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionErkennen, umschalten und dann nachziehen, was der Wechsel zurückgelassen hat · 14 Min.

    Erkennen, umschalten und dann nachziehen, was der Wechsel zurückgelassen hat – ein geführter Video-Walkthrough zu Modul 4, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Modul vier. GlobalDesk hat jetzt deutsche Ressourcen, eine deutsche Designer-Variante und eine deutsche Systembeschriftung. Wofür es noch keine Antwort hat: in welcher Sprache diese eine Sitzung laufen soll.

    Die Kultur einer Sitzung kann aus der Einstellung des Browsers kommen, aus einem festen Wert in der Anwendungskonfiguration, aus einem Parameter in der Adresse oder aus einer Auswahl, die der Benutzer bedient. Welche davon auch gewinnt: Entscheiden Sie es einmal zu Beginn der Sitzung, statt es auf jedem Bildschirm neu herzuleiten.

    Die Eigenschaft für die aktuelle Kultur ist die Kultur der aktuellen Sitzung. Ein statisches Feld mit einer Kultur wäre dagegen die Kultur des ganzen Serverprozesses und damit jedes anderen darin angemeldeten Benutzers. Das ist der teuerste Fehler in diesem Thema.

    Die Kultur auf automatisch zu setzen, startet jede Sitzung von der Browsereinstellung aus. Ein fester Name legt ein Gebietsschema fest, was für einen Testlauf oder ein Produkt für einen einzigen Markt richtig ist. Die Auswahl weist eine über ihren Namen geholte Kultur zu.

    Abonnieren Sie das Ereignis für den Kulturwechsel einmal und lassen Sie einen einzigen Handler die ganze Reparaturarbeit tun. Er wendet die ressourcengestützten Beschriftungen erneut an, formatiert Datum, Zahl und Betrag neu und baut den Designer-lokalisierten Editor neu auf. So wird jede Textart einheitlich.

    Vier Textarten, vier verschiedene Schicksale. Nach dem Wechsel erstellte Controls folgen von selbst. Bereits sichtbare Beschriftungen müssen erneut angewendet werden. Formatierte Werte müssen neu berechnet werden. Designer-lokalisierte Bildschirme müssen neu erstellt werden, weil ihre Ressourcen beim Aufbau gelesen wurden.

    Deutsch wird gewählt, und die Überschrift, die Navigation und die drei formatierten Vorschauen ändern sich alle. Der Editor bleibt auf Englisch, bis der Neuaufbau läuft. Genau diese Lücke zwischen den Teilen, die sofort folgen, und denen, die es nicht tun, soll dieses Modul verhindern.

    Ein Sprachparameter in der Adresse öffnet eine Sitzung auf Deutsch, während der nächste Browser englisch bleibt. Zwei Kulturen gleichzeitig lebendig in einem Prozess: genau dieses Verhalten würde ein statisches Kulturfeld für beide zerstören.

    Lab vier: die Kultur auf automatisch, die Sprachauswahl, ein Kulturwechsel-Handler, der Beschriftungen neu anwendet und Werte neu formatiert, und der neu erstellte Editor.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 4 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Automatische Erkennung, eine Sprachauswahl und CultureChanged · 45 Min.

    Ziel: Geben Sie GlobalDesk einen Sprachwechsel, der die Sache zu Ende bringt. Setzen Sie culture in Default.json auf auto, damit die Sitzung mit der Browsersprache beginnt, fügen Sie eine Sprach-ComboBox mit Englisch, Deutsch und einer Sprach-Regions-Kultur hinzu und setzen Sie Application.CurrentCulture in deren SelectedIndexChanged-Handler aus CultureInfo.GetCultureInfo, ohne die Auswahl jemals in einem statischen Feld abzulegen. Behandeln Sie Application.CultureChanged, um eine Methode ApplyTextResources aufzurufen, die jede ressourcengestützte Beschriftung auffrischt, und eine Methode UpdateCulturePreview, die die Datums-, Zahlen- und Währungsbeispiele neu formatiert, und bauen Sie im selben Handler den im Designer lokalisierten Kundeneditor neu auf. Prüfen Sie dieselbe Seite über den URL-Parameter lang und schreiben Sie dann eine Lab-Notiz darüber, was ein statisches Kulturfeld bei einer zweiten, gleichzeitig angemeldeten Person anrichten würde. Ergebnisse: Default.json mit culture auf auto, dazu eine Notiz, wann eine feste Kultur die richtige Wahl ist; Handler der Sprach-ComboBox, der Application.CurrentCulture aus CultureInfo.GetCultureInfo setzt; Handler für Application.CultureChanged, der ApplyTextResources und UpdateCulturePreview aufruft; im Designer lokalisierter Editor, der nach dem Wechsel neu aufgebaut wird, damit keine Beschriftung in der alten Sprache stehen bleibt; Prüfung über den URL-Parameter lang und eine Notiz, warum die Kultur nicht in einem statischen Feld leben darf.

Modul 5: Rechts-nach-links-Sprachen und lokalisierungssichere Layouts

Modul 5 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zu Rechts-nach-links an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Unterstützung für Rechts-nach-links in Wisej.NET: RightToLeft mit Inherit, No und Yes, RightToLeftLayout, das die Kinder eines Containers spiegelt, die Anwendungseinstellung rightToLeft, Layouts, die eine Textausdehnung überstehen, der rightToLeft-Zustand des Themes und die dokumentierten Einschränkungen bei DataGridView, ListView und PropertyGrid. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionSpiegeln Sie das Layout, nicht nur den Text · 14 Min.

    Spiegeln Sie das Layout, nicht nur den Text – ein geführter Video-Walkthrough zu Modul 5, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Lokalisierung in Wisej.NET, Modul fünf. GlobalDesk spricht bereits Arabisch. In diesem Modul geht es darum, dass es sich auch wie Arabisch liest, und das ist ein Layoutproblem, kein Übersetzungsproblem.

    Modul vier hat die Wörter fertiggestellt. Eine arabische Sitzung beginnt trotzdem an der falschen Kante des Bildschirms, das Auge landet also auf dem Letzten statt auf dem Ersten. Und die deutschen Beschriftungen schneiden schon in einem Panel ab, das gegen das Englische bemessen wurde.

    Zwei Eigenschaften mit zwei verschiedenen Aufgaben. Die Rechts-nach-links-Eigenschaft ändert die Richtung innerhalb eines Controls, so klappen Text und Ausrichtung um. Die Eigenschaft für das Rechts-nach-links-Layout spiegelt die direkten Kinder eines Containers, so klappt die Anordnung selbst um.

    Eine einzige Einstellung entscheidet für die ganze Anwendung. Die Richtung auf automatisch zu konfigurieren, leitet sie aus der Sitzungskultur ab, kein Bildschirm muss also selbst einen Kulturnamen prüfen. So eine Prüfung in einem Bildschirm ist eine Prüfung, die jemand im nächsten vergisst.

    Spiegelung sieht nur richtig aus, wenn sich das Layout bewegen darf. Andocken, Verankern, automatische Größe, ein Container-Layout und sinnvolle Mindestgrößen ersetzen feste Pixelpositionen. Und eine bewusste Ausnahme von links nach rechts hält etwa eine Kundennummer lesbar, denn ein Bezeichner ist keine Prosa.

    Dann testen Sie es richtig: kurzer Text, eine deutlich längere Übersetzung, ein schmales Fenster, eine Rechts-nach-links-Kultur und gemischte Inhalte, etwa eine arabische Beschriftung neben einer lateinischen Produktnummer. Jeder dieser Fälle bricht eine andere Annahme.

    Im Browser wählt die Auswahl Arabisch, die Richtung der Anwendung folgt der Sitzungskultur, und eine einzige Container-Eigenschaft spiegelt das Dashboard. Nichts davon ist globaler Zustand: Die Richtung gehört, wie die Kultur, allein dieser Sitzung.

    Der pseudolokalisierte Durchlauf legt offen, was das Englische verborgen hat, und das neu gebaute Layout schneidet nichts mehr ab. Das Kontakte-Grid wird geprüft und sein Verhalten aufgeschrieben statt angenommen, denn ein Grid hat eigene Spalten- und Ausrichtungsregeln.

    Lab fünf: Arabisch mit automatischer Richtung, beide Bildschirme gespiegelt mit erbenden Kindern, eine kommentierte Ausnahme von links nach rechts, ein Layout ohne Abschneiden und die Testliste mit fünf Fällen.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 5 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – RightToLeftLayout, Spiegelung und ein abschneidesicheres Layout · 45 Min.

    Ziel: Machen Sie GlobalDesk fit für eine Kultur, die von rechts nach links geschrieben wird. Nehmen Sie Arabisch in die Sprachauswahl auf und setzen Sie rightToLeft in Default.json auf auto, lassen Sie die untergeordneten Controls auf RightToLeft.Inherit und setzen Sie RightToLeftLayout auf dem Dashboard und dem Kundeneditor, damit deren Kinder gespiegelt werden. Lassen Sie genau ein Control von links nach rechts – das Feld für den Kundencode – und begründen Sie in einem Kommentar, warum dieser Bezeichner nicht umgedreht werden darf. Bauen Sie den fest positionierten Teil des Layouts mit Docking, Anchoring und einem Container-Layout neu auf, damit eine lange Übersetzung nicht abgeschnitten werden kann, fügen Sie eine pseudo-lokalisierte Ressourcendatei hinzu, deren Werte verlängert und in Klammern gesetzt sind, und halten Sie fest, was die Kontakt-DataGridView unter RTL tatsächlich tut, statt anzunehmen, dass sie spiegelt. Schließen Sie mit einer Layout-Testliste aus fünf Fällen ab, die Sie auf jedem Bildschirm erneut durchgehen können. Ergebnisse: Eintrag für Arabisch in der Sprachauswahl mit rightToLeft auf auto in Default.json; Dashboard und Kundeneditor mit RightToLeftLayout, deren Kinder auf Inherit belassen sind; ein bewusst von links nach rechts laufendes Control mit einem Kommentar, der die Ausnahme erklärt; mit Docking, Anchoring und einem Container-Layout neu aufgebautes Layout, damit lange Übersetzungen nicht abgeschnitten werden können; RTL-Testliste für kurzen Text, langen Text, ein schmales Fenster, eine RTL-Kultur und die Einschränkung der DataGridView.

Modul 6: Übersetzungsworkflow: ResX Resource Manager und weitere Werkzeuge

Modul 6 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zum Übersetzungsworkflow an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Übersetzungen als Teamarbeit behandeln: die Matrix des ResX Resource Manager über jede .resx-Datei der Projektmappe, das Hinzufügen einer Sprachspalte und das Filtern nach nicht übersetzten Einträgen, Ressourcenkommentare, die Übersetzern Kontext geben, invariante Zeichenfolgen, automatische Übersetzung nur als Entwurf, Export und Import über eine RESX-fähige Plattform und das Prüfen von Ressourcen-Diffs wie von Code. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin Raster mit jedem Schlüssel, jeder Sprache, jeder Lücke · 14 Min.

    Ein Raster mit jedem Schlüssel, jeder Sprache, jeder Lücke – ein geführter Video-Walkthrough zu Modul 6, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Modul sechs. GlobalDesk hat bereits vier Ressourcendateien. Italienisch mit zwei Editor-Registerkarten zu ergänzen heißt, Schlüssellisten mit dem Auge zu vergleichen, und die Person, die Italienisch spricht, kann die Projektmappe nicht öffnen.

    Drei Dinge scheitern an diesem Punkt: Dateien mit dem Auge zu vergleichen, die Frage zu beantworten, wie viel Übersetzung noch fehlt, und die Zeichenfolgen jemandem zu geben, der nie eine Ressourcendatei geöffnet hat und das auch nicht müssen sollte.

    Ein Ressourcen-Manager-Werkzeug stellt die Schlüssel in die Zeilen und jede Sprache in eine Spalte, eine Lücke ist damit eine leere Zelle statt etwas, das Ihnen auffallen muss. Wisej.NET legt seinen Text in standardmäßigen .NET-Ressourcendateien ab, besondere Unterstützung braucht es also nicht.

    Was das Werkzeug schreibt, ist eine gewöhnliche italienische Ressourcendatei: exakt die Schlüssel der neutralen Datei, die übersetzten Werte, ein Kommentar bei den mehrdeutigen und ein Eintrag, der absichtlich leer bleibt, damit sich der Fallback vorführen lässt.

    Die Runde selbst hat eine Form. Sprache hinzufügen, auf unübersetzte Einträge filtern, die Werte entwerfen, den Produktnamen als invariant markieren, damit ihn niemand übersetzt, dann prüfen. In dieser Runde verdient die Prüfung ihren Platz: Der Entwurf hatte zwei Platzhalter vertauscht.

    Automatische Übersetzung liefert einen Entwurf, kein Ergebnis. Prüfen Sie Terminologie, Platzhalter, Zeichensetzung, Tastaturkürzel und Produktnamen, und lesen Sie den Unterschied in der Versionsverwaltung, bevor Sie die Runde einchecken, genau wie bei jeder anderen Änderung an der Anwendung.

    Vertrauen Sie dem Filter, aber beweisen Sie es unabhängig. Überspringen Sie die invarianten Schlüssel, vergleichen Sie jede italienische Suche mit dem neutralen Wert und listen Sie jeden Schlüssel auf, der noch auf Englisch zurückfällt, statt die Spalte für vollständig zu halten.

    Läuft die Anwendung auf Italienisch, kommen die Beschriftungen aus der übersetzten Ressourcendatei, während Datum, Menge und Betrag im Moment der Anzeige für die aktive Kultur formatiert werden. Das sind zwei getrennte Mechanismen mit zwei getrennten Aufgaben.

    Ein Entwickler und zwei Sprachen können im Editor leben. Ein Team mit mehreren Sprachen will das Ressourcen-Manager-Werkzeug. Übersetzer, die keine Entwickler sind, brauchen eine Export- und Importrunde oder einen Dienst für Übersetzungsmanagement.

    Lab sechs: eine italienische Spalte ohne unübersetzten Schlüssel, Kommentare zu drei mehrdeutigen Schlüsseln, markierte Invarianten, ein geprüfter Unterschied der Ressourcendatei und die Workflow-Notiz.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 6 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Eine Sprachspalte, Kommentare und ein geprüfter Diff · 45 Min.

    Ziel: Führen Sie eine ehrliche Übersetzungsrunde an GlobalDesk durch. Öffnen Sie die Projektmappe im ResX Resource Manager, fügen Sie Italienisch als neue Sprachspalte hinzu und listen Sie mit dem Filter für nicht übersetzte Einträge jeden Schlüssel auf, der noch keinen Wert hat. Versehen Sie die drei Schlüssel, deren Bedeutung ohne Kontext mehrdeutig ist, mit Kommentaren – beginnend mit der einwortigen Beschriftung Open –, übersetzen Sie dann die italienischen Werte oder lassen Sie sie maschinell entwerfen, und markieren Sie den Produktnamen und die beiden technischen Bezeichner als invariant, damit sie niemand übersetzt. Exportieren Sie die neutrale und die italienische Spalte, importieren Sie sie wieder und prüfen Sie den entstandenen .resx-Diff, bevor Sie ihn als eine einzige überprüfbare Änderung committen. Schließen Sie mit einer einseitigen Workflow-Notiz ab, die den Visual Studio-Editor, den ResX Resource Manager und eine Cloud-Plattform für ein Team vergleicht, dessen Übersetzer keine Entwickler sind. Ergebnisse: Strings.it.resx, im ResX Resource Manager erstellt, ohne einen einzigen nicht übersetzten Schlüssel; Ressourcenkommentare zu mindestens drei mehrdeutigen Schlüsseln, damit ein Übersetzer den Kontext hat; Invariant-Markierungen für den Produktnamen und die Bezeichner, die nicht übersetzt werden dürfen; Export, erneuter Import und ein geprüfter .resx-Diff, als eine Änderung committet; Workflow-Notiz, die den Visual Studio-Editor, den ResX Resource Manager und ein Cloud-TMS vergleicht.

Modul 7: Lokalisierungsarchitektur für den Produktivbetrieb, Tests und Abschlussprojekt

Modul 7 von Lokalisierung in Wisej.NET – erstellen Sie mehrsprachige Anwendungen mit .resx-Ressourcen, kulturbewusster Formatierung, Sprachwechsel zur Laufzeit und Layouts von rechts nach links. Lesen Sie den Lektionsleitfaden und den Lab- und Prüfungsleitfaden, sehen Sie sich den Walkthrough zum LocalizationService des Abschlussprojekts an, bestehen Sie den Wissenstest und schließen Sie dann das praktische Lab in GlobalDesk ab.

  1. LektüreLektionsleitfaden · 14 Min.

    Lokalisierung, die den Produktivbetrieb übersteht: ein schlanker LocalizationService über dem ResourceManager, Domänencode, der Werte statt Sätze zurückgibt, eine beobachtbare Richtlinie für fehlende Schlüssel, eine Lokalisierungs-Testmatrix, Pseudo-Lokalisierung, die fest verdrahtete Zeichenfolgen aufdeckt, die Auslieferung von Satellitenassemblys und das GlobalDesk-Abschlussprojekt. Was das für Entwicklerinnen und Entwickler bedeutet, die die Grundlagen von C# und die Wisej.NET-Controls kennen und die Anwendung nun in mehr als einer Sprache ausliefern müssen – und wie Sie dieses Modul lesen.

    Lektionsleitfaden lesen (PDF)

  2. LektüreLab- und Prüfungsleitfaden · 10 Min.

    Was Sie im praktischen Lab bauen, das vorgeschlagene Vorgehen und die geforderten Ergebnisse.

    Lektionsleitfaden lesen (PDF)

  3. VideolektionEin Service, eine Testmatrix, ein fertiges Abschlussprojekt · 14 Min.

    Ein Service, eine Testmatrix, ein fertiges Abschlussprojekt – ein geführter Video-Walkthrough zu Modul 7, Schritt für Schritt in GlobalDesk aufgebaut. Läuft direkt hier im Player.

    Transkript der Sprecherstimme

    Lokalisierung in Wisej.NET, Modul sieben, das Abschlussprojekt. GlobalDesk spricht bereits zwei Sprachen. Der Produktivbetrieb stellt eine andere Frage: ob es sich dabei vorhersagbar verhält.

    Vier Fragen, die die Anwendung jedes Mal gleich beantworten muss. Woher kommt eine bestimmte Zeichenfolge? Welche Kultur ist gerade aktiv? Was passiert bei einem fehlenden Schlüssel? Und was macht ein Sprachwechsel mit den Bildschirmen, die schon offen sind?

    Trennen Sie den Text zuerst nach Eigentümer. Ihre eigenen Produkt-Zeichenfolgen. Die Systembeschriftungen von Wisej.NET, überschrieben in ihrer eigenen Ressourcendatei. Und Diagnosetext, der für Entwickler in einer Sprache bleibt, denn ein Log liest das Team, nicht der Kunde.

    Ein Lokalisierungsdienst bündelt diese Entscheidungen, ohne zu ersetzen, was .NET bereits kann. Ein Ressourcen-Manager. Eine Suche, die den Schlüssel in eckigen Klammern zurückgibt statt gar nichts. Und eine Formatierung, die bei jedem Aufruf die aktuelle Kultur liest, statt sie einmal festzuhalten.

    Dann holen Sie die Sprache aus dem Bildschirm und aus dem Modell heraus. Behalten Sie das Datum als Datum und den Betrag als Dezimalzahl, geben Sie einen Status als Aufzählungswert zurück statt als übersetztes Wort, und lassen Sie den Dienst daraus die Beschriftung machen, die der Benutzer am Ende liest.

    Das Testen ist hier eine geschriebene Matrix, kein Blick auf einen Bildschirm. Neutral, übersetzt, eine Region, die auf ihre Sprache zurückfällt, ein fehlender Schlüssel, formatierte Werte, ein Wechsel zur Laufzeit, absichtlich lange Zeichenfolgen, Rechts-nach-links und die Systembeschriftungen des Frameworks.

    Der pseudolokalisierte Durchlauf verlängert jeden Wert und setzt ihn in Klammern. Was noch reines Englisch zeigt, hat nie eine Ressourcendatei erreicht, und was unter dem längeren Text abschneidet, schneidet auch auf Deutsch ab. Beide Funde fallen im selben Durchlauf ab.

    Die Vorführung besteht aus vier Beweisen: deutsche Beschriftungen neben kulturformatierten Werten, ein Wisej-Systemdialog in derselben Sprache, ein fehlender Schlüssel, der sichtbar auf seinen Schlüssel zurückfällt, und zuletzt das gespiegelte Rechts-nach-links-Layout.

    Lab sieben: der Lokalisierungsdienst, eine Domäne, die Werte statt Wörter zurückgibt, der pseudolokalisierte Satz, die vollständige Testmatrix und ein Publish, das die Kulturordner behält.

  4. LektüreKI-Coding-Übung · 20 Min.

    Erstellen Sie das Beispielprojekt GlobalDesk dieses Moduls mit ChatGPT oder Claude aus einem fertigen Prompt, der das Modell auf die Spezifikation des Moduls verweist – und prüfen, starten und erweitern Sie dann, was Sie erhalten.

    Lektionsleitfaden lesen (PDF)

  5. WissenstestWissenstest – Modul 7 · 10 Min. · Bestehensgrenze 80%
  6. Praktisches LabLab – Abschlussprojekt: LocalizationService und die QA-Matrix · 45 Min.

    Ziel: Bringen Sie das GlobalDesk-Abschlussprojekt zu Ende. Kapseln Sie jede Ressourcensuche in einem LocalizationService mit den Methoden Text, Date, Number und Currency, geben Sie ihm eine Richtlinie für fehlende Schlüssel, die in der Entwicklung einen in Klammern gesetzten Schlüssel anzeigt und ihn im Produktivbetrieb protokolliert, und machen Sie diesen Service zur einzigen Stelle, an der die Oberfläche den ResourceManager berührt. Halten Sie die Domäne heraus: Das Ticket-Modell stellt einen TicketStatus-Wert bereit, und die Oberfläche bildet ihn auf eine lokalisierte Beschriftung ab. Führen Sie dann die Lokalisierungs-Testmatrix über die fertige Anwendung aus – die neutrale Kultur, Deutsch, eine Sprach-Regions-Kultur, die zurückfällt, ein absichtlich fehlender Schlüssel, formatierte Datumsangaben und Währungsbeträge, ein Wechsel zur Laufzeit, ein Durchgang mit langen Zeichenfolgen und die RTL-Kultur – und nutzen Sie dafür einen pseudo-lokalisierten Ressourcensatz, der alles aufdeckt, was noch fest verdrahtet ist. Vergewissern Sie sich, dass die Kulturordner eine Veröffentlichung überstehen, und reichen Sie die QA-Checkliste als Ergebnis des Abschlussprojekts ein. Ergebnisse: LocalizationService mit den Methoden Text, Date, Number und Currency und einer dokumentierten Richtlinie für fehlende Schlüssel; Domänencode, der einen TicketStatus-Wert zurückgibt, den die Oberfläche auf eine lokalisierte Beschriftung abbildet; pseudo-lokalisierter Ressourcensatz, mit dem jede verbliebene fest verdrahtete Zeichenfolge gefunden wird; vollständige Lokalisierungs-Testmatrix für Rückfall, Formatierung, Laufzeitwechsel und RTL; veröffentlichte Ausgabe, auf ihre Kulturordner geprüft, dazu die GlobalDesk-Lokalisierungs-QA-Checkliste.