swp-uebersetzerbau-ss13 / common

Shared files between teams.
1 stars 0 forks source link

Loading classes for interfaces #15

Closed namor-swp13 closed 11 years ago

namor-swp13 commented 11 years ago

Ich habe gerade mit Yves gesprochen und er würde es gut finden, wenn auch die Erstellung der Komponenten (Lexer/Parser/...) in sofern abläuft, als dass ein Student leicht selbst einen Lexer etc. schreiben kann ohne an der Main Methode zu spielen.

Bisher: Nur die Interfaces sind spezifiziert, die Erstellung der konkreten Objekte ist nicht spezifiziert. Folgen: Man muss z.B. mit

Lexer l = new FUCLexer(File...)

die Erstellung handhaben, z.B. in der main() Methode.

Yves hat mich auf die ServiceLoader Klasse hingewiesen, die Hilfreich aussieht: http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html http://openbook.galileodesign.de/javainsel8/javainsel_07_003.htm#mj65346a2fe05f611ba708ab8b984c0cbb

Damit könnte man ein Plugin-System erstellen, so dass z.B. über eine Config-File o.Ä. externer Code verwendet wird. (Vom Studenten geschriebener Lexer etwa)

Roman

namor-swp13 commented 11 years ago

FUC group decided to implement a prototype for milestone 1 in the FUC repository. We can discuss, whether it should move to the common repository, after milestone 1.

PS.: Sorry for posting in German language before, forgot about the policy. If translation is necessary please tell me.

namor-swp13 commented 11 years ago

Implemented by both groups long ago.