Vergleich: "Switch"-Anweisung versus Nachschlagetabelle in MapForce

Eine der großartigen Dinge an der Zusammenarbeit mit Softwareentwicklern ist, dass man nicht nur neue Dinge erschaffen kann, die es vorher noch nicht gab, sondern auch Einblicke in die Denkweise anderer Menschen erhält, wenn diese alternative Lösungen für gestellte Herausforderungen finden. Wir haben einen Kommentar von einem Softwareentwickler zu unserem aktuellen Beitrag mit dem Titel "Erweiterbare If-Else-Anweisungen funktionieren wie Switch-Anweisungen in MapForce" erhalten, der sich auf eines der von uns verwendeten Beispiele bezieht. Der Leser schlägt vor, dass unser zweites Beispiel ein Problem illustrierte, das in Altova MapForce eleganter mit einer Wertetabelle (Value-Map) gelöst werden könnte, als mit unserer erweiterten If-Else-Anweisung. Hier ist das ursprüngliche Beispiel, das einen Monat als Zeichenkette entgegennahm und die entsprechende Zahl generieren musste:

Eine Wertetabelle (Value-Map) in MapForce ist eine alternative Lösung, die als Nachschlagetabelle fungiert, während eine erweiterte If-Else-Anweisung wie eine Switch-Anweisung funktioniert. Hier ist, wie unsere Zuordnung aussehen würde, wenn wir eine Wertetabelle anstelle der erweiterten If-Else-Anweisung verwenden:

Ja, genau das. Anstatt Elementgruppen zu kopieren, einzufügen und zu modifizieren, wie wir unsere ursprüngliche erweiterte If-Else-Funktion erstellt haben, ermöglicht uns eine Wertzuordnung (Value-Map), die gesamte Nachschlagetabelle einfach über ihren Eigenschaften-Dialog zu erstellen:

Wir stimmen der Aussage des Kommentators zu – Value-Map funktioniert definitiv besser für das Problem, das wir gewählt haben, weil es viel schneller und einfacher zu erstellen ist! Die Tabelle aus den Eigenschaften der Wertzuordnung ist in MapForce prägnanter und leichter verständlichgenerierte Dokumentation zur Datenzuordnung als unsere ursprüngliche, erweiterte If-Else-Struktur. Natürlich können Sie das nicht immer Ersetzen Sie eine erweiterte If-Else-Anweisung durch eine Wertzuordnung. Daten, die in die Wertzuordnung eingegeben werden, müssen einen einzelnen Wert in der Eingabetabelle entsprechen, um ein bestimmtes Ergebnis zu erzeugen. Im Gegensatz dazu ermöglicht die erweiterte Wenn-Dann-Else-Funktion, eine Reihe von Bedingungen mit verschiedenen logischen Prüfungen zu definieren. Manchmal hängt die genaue Art eines Datenkonvertierungsprojekts so stark zusammen, dass die Entscheidung, ob ein Umschaltelement oder eine Nachschlagetabelle verwendet wird, eine Frage des Ermessens ist. Nehmen wir an, Ihr Projekt erhält als Eingabe eine Zahl, die eine Wellenlänge des elektromagnetischen Spektrums darstellt, und Sie möchten ultraviolette Strahlung, sichtbares Licht und infrarote Energie separat verarbeiten. In diesem Fall könnten wir eine erweiterte If-Else-Konstruktion verwenden, um Bereiche von Eingabewerten zu prüfen. Der erweiterte Abschnitt für "Wenn-Sonst"-Bedingungen in der Zuordnung könnte wie folgt aussehen:

Wenn die Eingabe eine ganze Zahl ist, könnten Sie auch eine Lösung mit einer Wertzuordnungstabelle erstellen, aber Sie müssten eine sehr umfangreiche Nachschlagetabelle erstellen. Und was passiert später, wenn sich die Projektanforderungen ändern und die Eingabe eine Dezimalzahl wird, oder wenn Sie jede sichtbare Farbe separat nach Namen filtern müssen? Im Wesentlichen ist Altova MapForce eine sehr nützliche grafische Darstellung einer umfassenden Software-Sprachwerkzeugkiste, die Sie vor den Details der Programmiersprachen-Syntax schützt. Sie bietet eine umfangreiche Sammlung von Komponenten, die Sie kreativ kombinieren können, um Ihre eigenen Herausforderungen bei der Datenzuordnung, -konvertierung und -integration zu lösen.

Überzeugen Sie sich selbst, wie einfach es ist, MapForce für Ihre eigenen Datenmapping-Projekte einzusetzen. Laden Sie eine kostenlose 30-tägige Testversion von MapForce herunter.