Spring Roo: technical deep dive
While an "out of the box" install of Spring Roo provides a tremendous productivity improvement for new Java developers and seasoned architects alike, there are many exciting opportunities for further gains once you start developing Roo "add-ons". Writing a Roo "add-on" enables you to fine-tune how Roo works and add support for extra technologies. Despite such flexibility, add-ons are surprisingly easy to write and brief (many core Roo add-ons are only a dozen lines of code). This session will be of interest to anyone interested in developing their own Roo add-ons, as well as those who are simply curious how Roo works under the hood and want to gain a better understanding of the technology.
At its heart, Roo offers a core set of services that permit add-ons to be used. This session will explore everything you need to know to confidently develop your own add-ons.
During this session Ben will actually build a simple Roo add-on live on stage. What better proof of how easy it is?! We'll do this by:
Looking at how to check the Roo project out of SVN, build it, and configure your development environment to support add-on development.
A quick tour of Roo's core infrastructure. This infrastructure includes major building blocks like the shell, file system manager, file system monitor, file undo capability, classpath abstraction, Abstract Syntax Tree (AST) parsing and binding, project build system interface, metadata model, process management, bootstrap and utility services.
Discuss the add-on we'll be developing and how the metadata, operations and command objects all cooperate to enable the desired features.
Finally, we'll go and build the add-on, testing it along the way and seeing how the development mode features within Roo shell work to support your development.
You'll leave this session with a strong knowledge of how Roo actually works "under the hood", and how you can use this knowledge in a very practical way to build brand new Roo features.
About Ben Alex
Dr Ben Alex is a Principal Software Engineer with SpringSource, and has been working professionally in software since 1995. Ben founded the Spring Security project in 2003 and led its development into a popular, open-source security framework that is used in numerous government, banking and military installations. More recently Ben founded and serves as lead of the Spring Roo and Spring Shell projects, both of which deliver significant productivity and usability benefits to those using Spring technologies.
Ben's career history also includes other roles in software development and business. From 2005 until 2008, he led the establishment and exponential growth of SpringSource's operations in Asia-Pacific. Prior to SpringSource, Ben founded and grew a successful Australian software company, Acegi Technology Pty Limited. He has been a director and advisor to businesses in diverse industries including business services, intellectual property licensing and ecommerce.
In recent years, Ben has presented at technology conferences including JavaOne, The Server Side Java Symposium, JAOO, Oredev, SpringOne and The Spring Experience. He is a regular guest presenter at user groups across the world, with recent appearances in Sydney, Melbourne, Brisbane, Canberra, Perth, Singapore, Wellington, Auckland, Christchurch and Stockholm. He also authored the security chapter of the Wiley book, "Professional J2EE Development with Spring Framework," and maintains a blog at http://blog.springsource.com/main/author/bena/.
More About Ben »