Scripting languages in Java Andrey Duka, System Architect
2 Java != Java platform
3 Agile Web Development with Java
4 Хорошее определение “A scripting language is a form of programming language that is usually interpreted rather than compiled” - whatis.com
5 Groovy, Ruby, Python, PHP
6 Немного исторической информации Jim Hugunin created Jython «BeanShell and Dynamic Java» Patrick Niemeyer Jan Arne Petersen created JRuby JSR 241: Groovy programming language Sun releases alpha of Coyote JSR 223: Scripting for the JavaTM Platform Groovy Grails 1.0
7 Небольшой список языков BeanShell Frink Groovy Hecl Jacl JavaScript Jelly Joy Jruby Judoscript Jython JavaFX Script ObjectScript Pnuts Scala Sleep V Yoix
8 Чудесная цитата “All configuration files eventually become programming languages…” - James Gosling
9 XML пример groovy.xml.MarkupBuilder def myXMLDoc = new MarkupBuilder() myXMLDoc.workbook { worksheet(caption:"Employees") { row(fname:"John", lname:"McDoe") row(fname:"Nancy", lname:"Davolio") } worksheet(caption:"Products") { row(name:"Veeblefeetzer", id:"sku34510") row(name:"Prune Unit Zappa", id:"sku3a550") } println myXMLDocuages
10 Нельзя не упомянуть DSL
11 Ещё одно определение “A Domain Specific Language (DSL) is a computer programming language of limited expressiveness focused on a particular domain.” - Martin Fowler
12 DSL пример / красота write 'readme.txt'.contents()
13 DSL пример (продолжение) String.metaClass.contents = { this.class.getResourceAsStream(delegate).getText() } def write = { file -> println file } write 'readme.txt'.contents()
14 Примеры повседневного использования BEA Weblogic – wslt IBM WebSphere – wsadmin Eclipse – GroovyMonkey JavaFX - JavaFX Script
15 Web разработка & GRails “For me, Grails is the natural next step for Java EE developers. If Spring and Hibernate provided an abstraction over Java EE and simplified development, then Grails is an abstraction over Spring, Hibernate, and Java EE that can take you, the developer, to the next level.” - Christopher M. Judd, Judd Solutions
16 Сколько строчек кода? Вопрос: сколько строчек кода/конфигурционных файлов нужно чтобы сделать on-line менеджер списка задач? 50, 100, 500 ?
17 Ответ 38
18 Очень полезные ссылки PROS vs. CONS
19 Помните
20 Очень полезные ссылки JSR 223: Scripting for the JavaTM Platform JSR 241: The Groovy Programming Language Bean Scripting Framework
21