Soultaker schreef op 19 August 2003 @ 20:43:
In principe heb je met Java (en .NET for that matter) natuurlijk al het voordeel dat je dynamisch extra code kan laden. Als extra voordeel heb je dat je een perfect aansluitende API hebt en dus geen communicatielaag tussen hoeft te voegen voor je scripting omgeving. Die extra laag wordt waarschijnlijk ook wel door Jython afgehandeld (ik had begrepen dat je daarin gewoon Java objecten vanuit Python kon gebruiken, en vice versa) maar meer algemeen heb je dat probleem natuurlijk wel (denk daarbij aan embeddable scripting talen als Lua of Tcl). Ik heb zelf overigens geen praktische ervaring met het embedden van scripting environments.
Jython in Java embedden is gelukkig geen enkel probleem. Het is een paar regels aansluiten, eigenschappen instellen en draaien maar. En jython kan idd eenvoudig java objecten aanspreken, hij kan ze ook gebruiken als zijn eigen typen (hij kan er bv ook zelf van extenden). Ik geloof zelfs dat andersom het ook mogelijk is.
Ik kan me dus enerzijds goed voorstellen dat je een library als Jython gebruikt, omdat de kosten van de integratie met Java vrij laag zijn en de winst vrij groot (je krijgt er een goede embedded scripting environment voor terug), maar anderzijds lijkt me de noodzaak om een embedded scripting environment te creeeren me voor Java veel kleiner dan (bijvoorbeeld) in het geval van C of C++. In Java kan een plug-in de boel tenminste niet compleet verneuken terwijl een native component de applicatie kan laten crashen, om maar wat te noemen.
Ik zie het intussen regelmatig gebruikt worden voor allerlei taken om de applicatie heen, zoals voor een buildscript (ipv ANT) en voor unittests.
Maar ik zit dus echt een beetje hoe ik het in moet zetten binnen de applicatie. Ik prog icm met mijn IDE(A) denk ik net zo snel als een ander rechtstreeks in Jython (dus ik heb mijn twijfels over het snelheids aspect) en het argument dat je jython scripts eenvoudiger kan aanpassen dan java heb ik ook mijn twijfels over. Java zal in bytecode aangeleverd moeten worden en jython kan geintepreteerd worden (je mag dus source aanleveren), maar ik heb toch ANT altijd op mijn systeem aanwezig, dus er zitten hoogstends een paar seconden snelheids winst in (voor Jython dus).
Scripten is dan het meest interessant voor de gebruikers. En als ik ergens zeker van ben dan weet ik dat juristen over het algemeen een hekel hebben aan technische zaken en hier ook niet zo snel mee gaan experimenteren. *schrijft software voor juristen*
Ik wil dus echt dolgraag Jython gebruiken binnen mijn systeem, maar ik heb nog steeds de meerwaarde er niet van kunnen ontdekken.
[
Voor 7% gewijzigd door
Alarmnummer op 20-08-2003 14:36
]