InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Eclipse DemoCamp London

Posted by Alex Blewitt on Jun 29, 2009

Sections
Architecture & Design,
Development,
Enterprise Architecture
Topics
Modeling ,
Java
Tags
XText ,
Eclipse Galileo ,
Eclipse ,
MDD

Eclipse DemoCamps have been organized around the world over the months of May and June to cover some of the new features of Eclipse Galileo. Today, the London DemoCamp was held at SkillsMatter.

The schedule presented NatTable, a high-performance SWT table with extended features, a retrospective of JQuantLib's experiences of moving to OSGi and a demo of Xtext, a simple yet powerful text-based DSL modelling tool. Unfortunately, due to time and operational constraints, the planned talks on Scala IDE and Java FX for Eclipse weren't available.

Dan Pollitt of JP Morgan presented the NatTable open-source project, which aims to provide a fully-functioned table for SWT. In addition to the normal operations that would be expected of any table widget, NatTable can scale to have over a million rows and 500 columns. Updates to the table can be highlighted with custom colours based on value, and the table (including formatting) can be exported as Excel spreadsheets or PDF for printing.

As well as displaying data values, the table's columns can be grouped and reordered with drag-and-drop, or customised by the end user without any code required. The data itself can have multiple sort criteria or filtered items. Internally it uses Glazed Lists to back an SWT virtual table.

Richard Gomes, lead developer of JQuantLib, discussed the challenges and benefits of moving towards OSGi for the Java port of the C++ QuantLib library. The goal is to provide a pure Java library capable of performing financial calculations and interpolation/holiday-based calendars (including Joda support). The build can produce either a monolithic Jar or OSGi bundles, using either Ant or Maven, and is being proposed to be part of the Eclipse Financial Platform.

As part of the OSGi migration, some of the existing code was being refactored to use OSGi services (where appropriate) including the ability to supply different kinds of dates/calendars (e.g. Joda). Being able to decouple components whilst using Declarative Services to join the components proved a simple way to set up the connections.

Lastly, Heiko Behrens of Itemis discussed Xtext, a framework for development of textual domain specific languages (DSLs). From a grammar, it's possible to generate a parser, an Eclipse editor (with code-complete) based on the language. The example demonstrated parsed a chess-based move language (algebraic chess notation) which could parse and then display in an EMF model (or translate into different models, like a graphical representation of a chess board). Although the Xtext project is relatively new, the technologies have been used in the open architecture ware project prior to being refactored into the Eclipse Xtext project.

Xtext will bring modelling to a wider group of people (specifically, those that have not been sold on model driven development in the past) and the ease of generating a parser and viewers/editors which can be embedded in an Eclipse runtime will make visualizing such models easier. It's also possible to run both the build and invoke the parsers from a headless runtime, although the GUI editors are specific to the Eclipse framework.

The London DemoCamp was a great success and brought a number of new technologies and libraries that can be used with Eclipse Galileo.

Material of Xtext Talk by Heiko Behrens Posted
  1. Back to top

    Material of Xtext Talk

    by Heiko Behrens

    Tank you for this review, Alex. You will find my slides and a video of the talk about Xtetx at my blog: www.1160pm.net/2009/07/01/xtext-at-democamp-lon...

Educational Content

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.