Seite 2 von 2

Verfasst: 21.04.2006 19:28
von Froggerprogger
Ich mache viel in Java. Ein Interface wäre daher interessant (auch wenn ich gerade keine konkrete Verwendung dafür hätte)

Wenn die Anbindung gut funktioniert, könnte man ja z.B. auch mit Swing seine Fensterchen bauen, deren Inhalte von PB stammen.

Aber wie sollte man sich das Interface vorstellen? z.B. sowas:

Code: Alles auswählen

a.l = javaInterface("new Auto()", ps, gewicht, "Porsche");
javaInterface(a, "setType()", "909 Roadster")
name.s = javaInterface(a, "getType()");
...
Aber eine eigene Callback-Prozedur wäre dann nicht auch zufällig machbar ? Also sowas wie PB-Funktionen als Listener in Java-Methoden zu registrieren ? Z.b. für Window-Events. Aber das gäbe bestimmt böse Multithreading-Probleme ?

An Anwendungen fallen mir spontan ein:
- AWT/Swing für Fenster nutzen
- coole Datenstrukturen wie Hashtables, ArrayLists, Trees, etc. in PB
- BigInteger/BigDecimal
- weitere der gigantisch vielen Libs nutzen

Verfasst: 21.04.2006 21:29
von AND51
Also ich habe mit JAVA programmieren zwar noch keine Erfahrungen, aber wenn es nette Dinge gibt, die mit JAVA gelöst werden können (Beispiel Verschlüsselung) dann würde ich an dieser Stelle auch mal JA sagen.

Verfasst: 21.04.2006 23:05
von Didelphodon
@Froggerprogger: Die von uns geplanten Befehle werden eine ähnliche Syntax aufweisen - Java-spezifische Syntax wird aber definitiv nicht enthalten sein. Dies ist auch recht wichtig für Java-Ungeübte oder -Unbetuchte.
Das mit dem Callback-Wunsch hatten wir schon am Tablett, sind aber bislang an dem Problem gescheitert, dass man zur Laufzeit leider keine (Wrapper-)Klassen aufbauen und (und das ist das Hauptproblem) die nötigen Interfaces implementieren kann, die den Konnex zur PB-Prozedur um den Konnex zur entsprechenden PB-Prozedur in sich zu binden. Aber vielleicht fällt uns dazu ja noch etwas gefinkeltes ein. Im Erstwurf würd ich aber noch nicht damit rechnen.

LG Didel.

PS: Die Verwendung der Java-Collections ist tatsächlich auch ein gutes Beispiel für den Profit dieser Schnittstelle.