groovy and cfml
play

Groovy and CFML CFGroovy: Groovy for CFML Developers Barney - PowerPoint PPT Presentation

Groovy and CFML CFGroovy: Groovy for CFML Developers Barney Boisvert Who Am I? Barney Boisvert Sr. Web Application Developer Mentor Graphics Corp. 10 years of CFML development 2 years of Spring/Hibernate development I try not to read


  1. Groovy and CFML CFGroovy: Groovy for CFML Developers Barney Boisvert

  2. Who Am I? Barney Boisvert Sr. Web Application Developer Mentor Graphics Corp. 10 years of CFML development 2 years of Spring/Hibernate development I try not to read slides. I don't always succeed.

  3. Who Are You? • CFML developer • Sense there's more out there • Curious about other languages • Curious about Java Platform technologies

  4. What We're Talking About • Groovy, CFML, and Java • Language selection • Language integration • Why it matters • How it can help • Billions of tiny magnets spinning around and around

  5. Java  JVM based  Huge ecosystem  Java syntax  Widely adopted  Static typing  Stable  Compiled  Ceremonious  Concise

  6. CFML  JVM based  Small ecosystem  CFML syntax  Increasing adoption  Dynamic typing  Cumbersome access to Java  “Compiled”  Essential  Verbose

  7. Groovy  JVM based  Small ecosystem  Extended Java sytax  Increasing adoption  Dynamic typing  Direct access to Java  Interpreted or compiled  Essential  Concise

  8. Data Structures

  9. Java Access

  10. Groovy Language Features • Closures • Optional typing • Literals (that actually work) • Meta programming • Inline DSLs • Lots of “grease” • http://groovy.codehaus.org/Documentation

  11. CFGroovy (1)  Created in 2007  Initially a scriptlet focus  Morphed into Hibernate focus − Largely superseded by CF9's ORM  Abandon-ware?

  12. Hibernate Demo • Config • Entity • Saving • Recall – Implicit relationship traversal

  13. CFGroovy 2 • Created at cf.objective() 2009 • One CFM file (an 88 line custom tag) • Scriptlet-only • Shared output stream • Pluggable languages

  14. Demo

  15. The Future • Hibernate devalued by CF9 • Return to scriptlet focus (CFGroovy 2) • Scriptlet classpath • Better CFML integration, where possible

  16. Groovy Gotchas • zero- vs one-based indexing • Map key case sensitivity • Type ambiguity • PermGen (CFGroovy only – not CFGroovy2)

  17. What's the Point? • Use more/better tools • Increase your skillset • Bridge to Java/JRE piecemeal

  18. The Punchline!

  19. Soapbox* • If you're not using version control, start. Before you write another line of code. • If you don't use a Front Controller framework, start. (I like FB3Lite, but then I wrote it) • Learn about your tools. They're all far more powerful than you believe. * I'm going to read this one verbatim. Sorry.

  20. Links Preso (w/ example source): http://tinyurl.com/cfunited09-cfgroovy Blog: http://www.barneyb.com Email: bboisvert@gmail.com Twitter: @barneyb CFGroovy Info: http://tinyurl.com/cfgroovy Source: https://ssl.barneyb.com/svn/barneyb/cfgroovy/trunk/demo CFGroovy 2 Info: http://tinyurl.com/cfgroovy2 Source: https://ssl.barneyb.com/svn/barneyb/cfgroovy2/trunk/demo FB3Lite Info: http://tinyurl.com/fb3lite Source: https://ssl.barneyb.com/svn/barneyb/fb3lite/trunk/index.cfm

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend