Bild

B-Wise XA: Graphical User Interfaces (GUI)

B-Wi­se XA stellt un­ter­schied­li­che Cli­ents zur Ver­fü­gung:

Browser-Client

Smart-Client

Browser-Client

Der Browser-Client ermöglicht die Darstellung des Benutzerinterface mit Hilfe von HTML und stellt die passende Lösung für hoch-interaktive Online-Anwendungen dar (Web-Applications). Der Browser-Client verwendet Standard-Technologien und -Komponenten und ist auf allen gängigen Browsern ablauffähig.

Optional stehen innerhalb des HTML-Quellcodes mächtge Sprachkonstrukte und Makros zur Verfügung, die das Implementieren auch komplexer Dialoge einfach und flexibel gestalten. Vordefinierte CSS-Styles erlauben ein schnelles und konsistentes Layout, das sich "responsive" an die unterschiedlichen Geräte-Kategorien anpasst (Desktop, Tablet oder Smartphone).

Mit dem B-Wise XA Browser-Client implementierte Anwendungen sind klassische "Single-Page-Applications" mit voller Unterstützung der Browser-Controls (Back-Button, Reload, Bookmarking) und bidirektionaler Kommunikation zwischen dem Client und dem Server.

Die Vorzüge des Smart-Clients sind:

Klassische HTML-Entwicklung (Nutzung von vorhandenem Know-How)

Vordefinierte Controls für typische Vertriebsanwendungen

Hohe Interaktivität der Anwendungen "out-of-the-box"

Einfache aber mächtige Anbindung der Server- bzw. Datenseite

Responsive Layout Vorlagen verfügbar

Optionale Sprachkonstrukte und Makros (Schleifen, Bedingungen, Variablen etc.)

Klare Strukturierungsmöglichkeiten durch optionale Sprachkonstrukte

Smart-Client

Der Smart-Client ist eine Plattform-spezifische Anwendung, die aktuell für die Plattformen Windows (ab Windows XP) und iOS (ab iOS 7) verfügbar ist. Der Smart-Client verwendet für die Definition der grafischen Oberflächen eine auf XML basierte Auszeichnungssprache namens BML. "BML" steht für B-Wise XA Markup Language und ermöglicht die deklarative Beschreibung der Benutzeroberfläche mit Hilfe von in XML definierten Elemente wie Fenster, Eingabefelder, Buttons etc.

Die Vorzüge des Smart-Clients sind:

Weniger technisches Vorwissen für die GUI-Entwicklung erforderlich

Echtes wiederverwendbares Komponentensystem mit einer sauberen Architektur

Flexible Gestaltungsmöglichkeiten bei der Definition der Oberflächen

Saubere Trennung zwischen Content und Layout

Einfache aber mächtige Anbindung der Server- bzw. Datenseite

Klare Strukturierungsmöglichkeiten durch optionale Sprachkonstrukte

Dynamische Funktionen wie z.B. aufklappbare Dialoge oder clientseitige Filterfunktionen durch integrierte Skripting-Funktionen

Beliebig erweiterbar durch modulares Konzept auf Client- und Serverseite

De­kla­ra­ti­ve An­sät­ze kön­nen eine bes­se­re Abstrak­ti­on bie­ten, um es bei­spiels­wei­se Do­main-Ex­per­ten zu er­mög­li­chen, ak­tiv an der Be­nut­ze­ro­ber­flä­che mit­zu­ar­bei­ten, auch ohne fun­dier­te Ja­va-Kennt­nis­se. Da­mit kön­nen In­ter­ak­ti­ons- und De­si­gnspe­zia­lis­ten un­mit­tel­bar an der An­wen­dungs­-O­ber­flä­che ar­bei­ten, ohne ab­strak­te Werk­zeu­ge nut­zen zu müs­sen, de­ren Ein­satz spä­ter zu In­for­ma­ti­ons­ver­lus­ten füh­ren kann.

BML ist eine auf XML ba­sier­te Aus­zeich­nungs­spra­che, die zur Be­schrei­bung der Dia­lo­g­ele­men­te, de­ren Po­si­tio­nen Lay­out dient. Nach­fol­gend ein ein­fa­ches Bei­spiel:

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<bw:portlet
  xmlns:bw="http://www.biss-net.com/2001/bwise/ehtml"
  id="SCOUT_Hallo"
  titlebar="false"
  ifocus="TF_Input"
  target="cont">

  <bw:label id="LA_Info" styleref="promt">
	<bw:pos aox="0" aoy="0" acx="0" acy="0" eox="10" eoy="10" ecx="160" ecy="34" />
	<bw:style> 
		<bw:fontsize>14</bw:fontsize>
	</bw:style>
	<bw:content>Nachname</bw:content>
  </bw:label>
  
  <bw:entry id="TF_Input" align="MiddleLeft" tabindex="1">
	<bw:pos aox="0" aoy="0" acx="0" acy="0" eox="165" eoy="10" ecx="480" ecy="34" />
  </bw:entry>
      
  <bw:line id="DL">
	<bw:pos aox="0" aoy="1000" acx="1000" acy="1000" eox="10" eoy="-40" ecx="-10" ecy="-40" />
  </bw:line>

  <bw:button id="BU_Beenden" tabindex="8">
	<bw:pos aox="1000" aoy="1000" acx="1000" acy="1000" eox="-110" eoy="-32" ecx="-10" ecy="-8" />
    <bw:content>~Beenden</bw:content>
  </bw:button>

</bw:portlet>

Gegenüberstellung Browser-Client und Smart-Client

Die folgende Tabelle gibt Ihnen einige Anhaltspunkte zur Wahl des richtigen Clients. Selbstverständlich können beide Clients auf ein und denselben Server zugreifen, so dass auch ein gemischter Betrieb möglich ist.

BML Entscheidungsparameter HTML
Sehr gut Plattform Look&Feel Schlecht
Gut Portabilität (Aufwand) Sehr gut
Sehr gut Zugriff auf zugrundeliegende Plattform Schlecht
Sehr gut Performance (Runtime) Gut
Schlecht Verfügbarkeit von Entwicklern Sehr gut
Gut Plattformverfügbarkeit Sehr gut
Sehr gut Verfügbarkeit von Drittkomponenten Sehr gut