mercoledì 13 gennaio 2010

2.5 tiers at Javaday 2010

This year at Javaday I'll be happy to present a talk on what I see as a new emergent approach in Web Development. It's not a completely brand new approach, but it's slowly gaining momentum since a couple of years. I couldn't find a good name for this approach, so I invented a new one, "2.5 tiers".

The 2.5 tiers approach is about how Jquery and Rest are changing the way we design webapps: there is no need anymore of complex server side MVC, because you can easily do all the work in javascript, with the help of unobtrusive cross platform Javascript libraries like JQuery.
RESTful design is the other side of the coin, because producing JSON representation of data to be consumed by Javascript is now as easy in Java as in higher level web scripting languages, mostly thanks to libraries like RESTEasy (which is a powerful JAX-RS implementation).
The name 2.5 tiers shows that it's not anymore a full 3 tiers, but it's neither an old client server app (2 tiers). You still have code on the server: caching, validation, REST services, JSON transformation are all on the server side. But a lot of code is now moving back to the client: gui widgets (Jquery UI) are completely client side (probably feeded by a server with JSON) and that's hardly news, but templating for example (JTemplate is one of the emerging libraries) is far less common on the client side. So it's two tiers and "a half".

An interesting side effect of this approach is that you are free to choose for example a .Net application server instead of a Java one (don't take that as an advice!), or try something new and cooler like Erlang or Scala, without touching a single line of GUI code: you basically only have to implement the same interface (GET, POST, PUT and DELETE) and produce the same representation of data (mostly JSON, but XML still has its role sometimes). That means, yes, you can write cross browser components (independent by server side code too!) and reuse those components in other departments of your company that use different technologies (if you are like me, in our company we basically have all the existing IT architectures of the world).

Javaday is not only a free community driven event with the best Italian (and some international) speakers, but we also have enough sponsors to make a great day with great gadgets and great drinks too :)

We are waiting for you, too.

Nessun commento:

Posta un commento