Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Browser graphics: Java Applet vs Flash vs anything else?

We sell photoalbums which our customers create theirselves using a client album editor program (for Windows). Now we are going to develop an online program so customers could create their albums in the browser: upload photos and edit them. This is going to be a rich browser application with full graphics support.

The problem is what technology to use?

Our server application is build in Java and we think about Java Applets so that we could reuse some Java-code. We are also not very familiar with Flash. But some people say that Flash is preferred.

Maybe there're some modern technologies now? SVG or some Google technologies (like GWT but with graphics support) or something?

What do you think?

Thanks in advance!

UPDATE

The photobook editor was created using GWT + SVG.

like image 977
Andrey Minogin Avatar asked Dec 12 '22 21:12

Andrey Minogin


2 Answers

There are four big choices you can go for:

  • HTML5 + CSS 3 + AJAX
  • Silverlight
  • Flash
  • Java

HTML 5 + CSS 3 + AJAX (For the surrounding website.)

As there are a lot of graphics involved and these upcoming standards are fairly new it would be hard to get everything you want accomplished in this language, you could build up a large part of the site in this but the image editor itself will not be fairly easy to develop compared to other languages.

Silverlight (Unless you have a lot of time... A bad choice, for now...)

A lot of users don't have this installed by default yet although the support for installing it is reasonable (Moonlight on other OSes, different browsers can do Silverlight), if you want to reach a wide public you might want to skip this for now. This one would involve you to learn C#, .NET, WPF and other Microsoft technologies to get you going which will require a lot of learning time from your company.

Seesmic, the second popular Twitter Client, however seems to use Silverlight to install and update it's desktop application in a quick way in the browser so it might not be too hard to require your users to have Silverlight. Another bonus to learning C#, .NET and WPF is that you can use the learned techonologies to write desktop applications. (Which again could run on other OSes, Mono's support is getting good)

Java VS Flash (Stay unless you have reasons to change!)

As seen on Google Trends: Java, Flash, Silverlight you will notice that Java and Flash are on the same level, so they are both fairly supported by your users. You could best stay with Java as you have the experience in that language, not to forget that you could reuse code you have written. Another bonus on staying with Java is that you don't to switch between software for developing different parts of your software infastructure.

You could look up Java VS Flash on Google and only when you have the reason to change you should do so, there is no point at learning something with the same (or maybe worse) capabilities when the thing you use at the moment is fine to do the job. There is nothing wrong with learning something new when you have the time for it though, but you'll have the drawback of being new to it...

like image 69
Tamara Wijsman Avatar answered Dec 25 '22 20:12

Tamara Wijsman


Java applets are a feature-rich, well-established technology for embedding applications in web pages and you are a Java shop with an established code base in Java.

Unless there's a particular platform that you want to target where you know that Flash support is better than Java support, then in your position I would really just stick to Java.

like image 30
Neil Coffey Avatar answered Dec 25 '22 20:12

Neil Coffey