uio--WebPageMain-Module

Overview

JAVA-AX | Overview

Im Abschnitt JAVA-AX befassen wir uns mit der Übersichtung, Dokumentation und examplischen Nutzung einer Reihe von Java Klassen, darunter den ArgumentInterpreter mit dessen Hilfe die Auswertung von Parametern auf der Kommandozeile auch mit komplexeren Parametern und Hilfsfunktion ausgewertet werden können.

Die Klassen und zugehörigen Packages dieses Abschnitts dienen im Schwerpunkt dazu, Einsteigern eine gewisse Mindestfunktionalität für zu ermöglichen, ohne im selbst lernen oder verstehen zu müssen, wie man diese Funktionalität programmiert.

Abbildung: Java Tiers A

Overview

JAVA-AX | External Classes

Externe Klassen stammen mitunter aus unserem eigenen Fundus und sind in erster Linie Hilfsklassen für den Zeitpunkt, wo man mal schnell ein Problem lösen möchte, ohne sich die komplette Funktionalität wieder einmal neu von Hand bauen zu müssen.

Diese Klassen sind nicht für den Produktiv-Einsatz getestet, erfüllen aber im Mindestumfang Ihren Zweck.

Overview

JAVA-AX | ArgumentInterpreter

Die ArgumentInterpreter-Klasse ermöglicht es, Kommandozeilen-Parameter in Langfassung wie --port 80 oder Kurzfassung -port 80 mit einer Hilfe konfigurieren und über den intern Parser dann die bei Aufruf von main(String[]args) übergebenen Argumente in args auswerten zu können.

Die Klasse erzeugt bei Eingabefehlern entsprechende Ausnahmen und bietet über --help und -h die Option, eine Hilfe für alle Kommandos anzeigen zu lassen.

Die ArgumentInterpreter-Klasse vermag zwischen Commands und Subcommands zu differenzieren, dh. java MeinProg take --what Apfel hätte quasi das Kommando take und das Subcommand what mit dessen Wert Apfel.

Im Falle von Werten in Anführungstrichen wie --name "Herbert Meier" vermag der Interpreter doppelte Anführungsstriche zu erkennen, damit Vor- und Nachname im Beispiel nicht in zwei Werte für den Parameter getrennt werden.

Auch sind mit --coord 12.5 14.9 Parameter möglich, welche über zwei Werte verfügen.

com.stuelken.commons.utility.cli.ArgumentInterpreter

Documentation Classes

JAVA-AX | Documentation Classes

Für die Dokumentation wurden mitunter das Programm DocReflector geschaffen, welches im kompilierten Programmcode nach mitunter den Annotationen @DocDemo und @DocCategory sucht und die zugehören Klassen auflisten kann.

Beispiel: In Anlehnung an ein Schlagwort-Verzeichnis oder auch hierarchische Strukturen in der Taxonometrie von Blogs wie beispielweise bei WordPress ist es damit möglich, auch den Programmcode einer Java-Anwendung mit Kategorien oder «Tags» zu ergänzen.

@DocDemo erfordert eine Angabe des content-Parameters. @DocCategory erwartet nur einen String mit einer Verzeichnis-artigen Stichwort-Struktur.

@DocDemo(content="Hier folgt eine Erklärung.")

@DocCategory("Example/Annotation/Repeatable/ExampleTagAnnotation")


Es handelt sich um @Repeatable Annotations.

@ExampleTagAnnotation // 1. Annotation ohne Wert @ExampleTagAnnotation(content = "Lebewesen/Tier/Fisch") // 2. Annotation mit einem Pfad @ExampleTagAnnotation(content = "Lebewesen/Tier") // 3. Annotation mit Pfad @ExampleTagAnnotation(content = "Lebewesen") // 4. Annotation mit Pfad

FootNotes, Keywords, Tags


    Hinweise, Rechte, Marken

    UI ORGANIZED.

    UIO3 Es ist einfacher als Du denkst.

    Stelle noch heute Deine Anfrage.

    uio--WebPageFooter-Module