Contribute to this site!  (no login required)...      or  
Java Posse 101

Directions (hide this section)

1. Click (memorize) in a memorizable table below, to begin a flashcard-like process
Try clicking (memorize) in both columns (to decide which side to start with)
2. Guess the answer in your head
3. Click the buttons and follow the directions at the bottom of the table
See Help for more detailed directions

Summary

Terms and technologies mentioned in episode 101 of The Java Posse podcast.

Interviewees

Question (memorize) Answer (memorize)
Names (of interviewees) Dr Paul King, Jon Skeet
Paul's job Managing Director and Principal Consultant (at ASERT)
Jon's job Software engineer (and inveterate technological dabbler)
Book they're writing Groovy in Action (Manning)
Other authors (of book) Dierk Koenig, Guillaume Laforge, Andrew Glover

Talking points

Question (memorize) Answer (memorize)
Groovy has features from... Perl, Python, Ruby
Groovy is a... dynamically typed language
Plans for generics? (in Groovy) currently none
Can variables be strongly-typed? (in Groovy) yes, but checked at runtime
Can you extend groovy classes with Java? yes (and vise-versa)

More

Question (memorize) Answer (memorize)
Speed of Groovy between 3-4 times slower than Java to the same speed (rough estimate)
Does Groovy support annotations? not yet
Can you embed Groovy code in ant? yes
Do closures exist it C#? yes, but with more typing (than Groovy)
Some shortcuts Groovy provides XML, SQL, Regular Expressions, Servlets, Swing, Ant, COM Scripting

Memorize these together

Groovy features

Feature (memorize) Description (memorize)
Closures anonamous block of code passable as a parmeter
Builders (Groovy feature) consistent way of building tree structures
Some Groovy builders AntBuilder, SwingBuilder, SAXBuilder, MarkupBuilder (xml)
GPath path language for accessing parts of tree structures

Tools

Tool (memorize) Description (memorize)
Grails Groovy-based web framework (inspired by Ruby on Rails)
GORM (Grails Object-Relational Mapping) framework to access a DB
Groovy SOAP Run and call SOAP servers
GSP Groovy Server Pages
Groovlets simplified Groovy version of servlets
LINQ Microsoft framework for accessing a DB(not yet released)

Relevant code examples

Feature (memorize) Working Groovy Code (memorize)
Run closure on a list
[1, 2, 3].collect( { println it*2 } )
Prints "2 4 6"
Optional typing
String t = "Hi"
x = 123
Http and GPath
xml = new URL("http://feeds.feedburner.com/javaposse").text 
println new XmlSlurper().parseText( xml ).channel.description.text()
Prints "Java News and Interviews"
Builder
new AntBuilder().delete() { fileset( dir:".", includes:"**/*.txt" ) }
Deletes all *.txt files, recursively
Sql select
sql.eachRow("select * from t") { println it.foo }
Prints 'foo' field of each record

See also

♦ Java Posse - all Java Posse episodes
♦ Groovy

 

this section is inserted from the Java Posse page

Pages

Recent Episodes

♦ Java Posse 118 - Newscast and Desktop Roundup for May 2nd 2007
♦ Java Posse 117 - Newscast for April 24th 2007
♦ Java Posse 116 - Newscast for April 18th 2007
♦ Java Posse 114 - Newscast for April 11th 2007
♦ Java Posse 112 - Newscast for April 3rd 2007
♦ Java Posse 110 - Newscast for March 27th 2007
♦ Java Posse 108 - Newscast for March 20th 2007
♦ Java Posse 106 - Newscast for March 7th 2007
♦ Java Posse 104 - Newscast for February 20th 2007
♦ Java Posse 103 - Newscast for February 13th, 2007
♦ Java Posse 102 - Newscast for January 30th 2007
♦ Java Posse 101 - Interview with Dr. Paul King and Jon Skeet about Groovy

Main Page

♦ Has older episodes

 

 

Add a section to this page!

- Click this button to contribute to this page (by adding a section here).
♦  Feel free to experiment. Your edits won't immediately show up to everyone.

Memorize all (on this page)

Combines all tables on this page into one large table, and begins the memorization process:
 
the flashcard wiki anyone can edit!
the flashcard wiki anyone can edit!
working...
Terms of Use      Copyright memorizable.com 2007