Which Client Will Dominate?

DZone 's Guide to

Which Client Will Dominate?

· Java Zone ·
Free Resource

I first got into the magical world of the internet in the happy 90's. Back then you could find 3 basic types of network application clients: Internet lightweight web sites (HTML, JS), installed applications with network connection like ICQ or Applets.

The years went by, the internet connection got faster, richer applications came out of the desktop and into the browser. The web applications clients became fatter. Even if the desktop applications still exist, they have clearly become a lot less common. That was about the time I started developing in Java.

The obvious solution for many of these fat clients were the Java web frameworks like Struts,  JSF and all the others. But when the years went by a new approach became more and more popular -  the Ajax web applications, with GMail in the lead.

Fat clients never looked better, the usability was excellent. It is almost as if we are using desktop applications (!?!). JavaScript was never so cool. Libraries like JQuery were born every day and also some new solutions like GWT make our life with JavaScript easier.

But the story doesn't end here. With the birth of the smart cellphones an old player came back to life - that's right, the installed application. The small screen and slow connection makes rich client web sites more difficult to handle. IPhone followed by Android and Blackberry, clearly encourage this approach with their application markets. So clearly installed applications are dominators in the mobile network applications arena.

But what's next? Are the mobile installed applications going to suffer the same fate as the desktop applications? Clearly the rise of HTML5 won't make their life easier. Or maybe the installed applications will survive with the help of technologies such as JavaFX. Maybe both will manage to have a share.

What do you think?

 From http://www.aviyehuda.com/



Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}