Why java applets/javafx aren't widely used? (why I shouldn't use them for RIA) [closed]
Asked Answered
A

3

12

Java is one of the best managed runtime technologies we have. It has very high performance VM which allows to achieve performance close to C. The amount of high quality open source libraries is incomparable to any other platform. However, despite it was the first dynamic client side technology to appear in browsers (Applets), it isn't used widely now. What are disadvantages of Java which make people use JavaScript + HTML5 or Flash/Flex instead of Java for RIA? Why should I use them despite they are not as pleasant for a programmer as Java?

Anchovy answered 29/8, 2012 at 10:30 Comment(4)
anfyflash.com/flashinsteadofjava.htmlGenagenappe
#816928Genagenappe
Though I think it had more to do with the fact that someone with little scripting experience could create fancy vector animations in Macromedia Flash. So Flash appealed to a wider range of web designers.Genagenappe
This question has been flagged as "primarily opinion-based", but I'm electing to leave it open given the significance of the question.Menides
A
5

It can take a lot of work to create a high quality applet compared to the amount of time it takes someone to create a high quality flash application. Building a presentation layer can be tedious without the right tools.

Furthermore, Oracle/Sun gave up on applets a while ago. They still support them but are not actively trying to improve them. Oracle is currently putting all of its weight behind JavaFX. JavaFX is a technically viable solution and has the advantage of allowing you to leverage your Java knowledge. The problem is most web designers don't have much Java knowledge and don't want to bother with it so JavaFX has never been very popular. If a web language isn't popular it can annoy your users when they have to download plugins to use it.

Another thing to keep in mind is that Flash itself is also on the way out. If you're going to be developing and maintaining this project yourself then feel free to pick up JavaFX.

If you plan on hiring a web designer or you want to learn web design skills allowing you to get hired somewhere then your best bet these days seems to be learning a good javascript framework (e.g. JQuery) and picking up some solid HTML5 and CSS3 skills.

Avoidance answered 29/8, 2012 at 12:27 Comment(2)
You need to distinguish between environments. On the Internet it's a different story. But on an intranet the environment is tightly controlled. Users will not "get annoyed" at having to install software - they are already installed 100% via tightly controlled workstation baseline images. Flash or Java will not be "on the way out" until those organizations determine it isn't needed by any of their applications. And believe me, the number of enterprise/intranet Flash/Flex and Java applications is huge. In an intranet environment, non-developer "web designers" aren't needed.Alinealinna
JavaFX suffers from the same problems as Java applets, doesn't it? It is usually difficult to get an applet to run at all. You need to install Java first and so on...Selftaught
I
8

"it isn't used widely now"

I disagree with this perception... some examples:

Mindterm is a Java based ssh freeware client supporting ssh2 can be run embedded as applet google for it

Mizu web phone is a Java and open standards based SIP VOIP client which can be embedded as an Applet -google for it-

OpenSignX is an opensource Java based document and form signing Java applet for PKI X.509 certificates. google for it

Coolsmile is a Java based IRC client that can be run as app or embedded Applet -google for it-

JFTerm is a Java telnet client. Can be run as desktop app or applet. Supports telnet (23), ssl and ssh -google for it-

J3Dworkbench is a Java 3D game-design authoring tool. delivery via Webstart or as Applets -google for it-

There´s also thevirtualheart dot org a Java based heart simulator also an applet

or Geocaching browser (JavaFX) at canoo dot com

You cannot do everything in HTML5... for instance take a look at complex apps like JITSI (videocomerencing, voip app) or MuCommander -google it- or Sweet Home 3D, or Art of Illusion... all java-based. Java serves a purpose... and Microsoft and its friends have been trying to discredit it, replace it with something else, and it continues being relevant. ask yourself why. it´s because it serves a purpose and its level playing field software ecosystem is HUGE.

Do a seach of code dot google.com for Java-related projects... and see.

Plus, to the commenter above who says JavaFX has limited appeal let me remind you that Java is NOT ONLY a programming language but actually 3 things: a programming language, a runtime environment, and a level playing field software ecosystem. You can use Java libs without writing a single code of Java language ... using Jython (Python for Java), JRuby (Ruby on Java), NetRexx (open source Rexx on Java, see www.netrexx.org), xRuby (ruby to Java bytecode compiler) or Jabaco (Basic to java bytecode compiler)... just to name a few of the many JVM languages... http://en.wikipedia.org/wiki/List_of_JVM_languages

Interflow answered 31/8, 2012 at 5:10 Comment(2)
All these examples are marginal and aren't widely used. I see them for the first time. On the other hand, there are a lot of widely used HTML5 and Flash applications.Anchovy
I think this q is FUD. Any question that includes "and why I shouldnt use x technology" is. Its aim is not to provide solutions to a problem, but rather to compile args against technology x. I am sorry, Konstantin, that you didnt know any of the solutions I included in my reply. Does that make such solutions less downloaded? of course not. Your logic is flawed. I use Keepvid.com, an applet based site to download YT videos daily. Does the fact that you dont know it or dont use it, less used by me and hundreds of thousands of others? NO. Another indication of FUD is mixing applets with JAVAFX.Interflow
A
5

It can take a lot of work to create a high quality applet compared to the amount of time it takes someone to create a high quality flash application. Building a presentation layer can be tedious without the right tools.

Furthermore, Oracle/Sun gave up on applets a while ago. They still support them but are not actively trying to improve them. Oracle is currently putting all of its weight behind JavaFX. JavaFX is a technically viable solution and has the advantage of allowing you to leverage your Java knowledge. The problem is most web designers don't have much Java knowledge and don't want to bother with it so JavaFX has never been very popular. If a web language isn't popular it can annoy your users when they have to download plugins to use it.

Another thing to keep in mind is that Flash itself is also on the way out. If you're going to be developing and maintaining this project yourself then feel free to pick up JavaFX.

If you plan on hiring a web designer or you want to learn web design skills allowing you to get hired somewhere then your best bet these days seems to be learning a good javascript framework (e.g. JQuery) and picking up some solid HTML5 and CSS3 skills.

Avoidance answered 29/8, 2012 at 12:27 Comment(2)
You need to distinguish between environments. On the Internet it's a different story. But on an intranet the environment is tightly controlled. Users will not "get annoyed" at having to install software - they are already installed 100% via tightly controlled workstation baseline images. Flash or Java will not be "on the way out" until those organizations determine it isn't needed by any of their applications. And believe me, the number of enterprise/intranet Flash/Flex and Java applications is huge. In an intranet environment, non-developer "web designers" aren't needed.Alinealinna
JavaFX suffers from the same problems as Java applets, doesn't it? It is usually difficult to get an applet to run at all. You need to install Java first and so on...Selftaught
H
1

Google maps for mobile is a java applet "http://en.wikipedia.org/wiki/Google_Maps#cite_note-20" I should think that says alot, the question is sort of a truism this prevents a constructive answer the question I'd try to answer is this "is java applets and javaFX widely used" as your question is based on a premise which we cant be sure of how you arrived at it. Java applets work on the web JavaFX on the other hand is more than just for building applets, a GUI isn't just an applet

I can just hope to add to your knowledge and help you re-assess your opinion the below is from:

http://www.ibm.com/developerworks/web/library/wa-appmozx/

HTML is great for displaying hypertext documents, but terrible for displaying GUIs. Traditional Web-based applications use endless amounts of effort trying to shoehorn HTML into the look-and-feel of a traditional forms-and-menus application. That was never a purpose for which it was intended. The addition of form elements to HTML (FORM) did little more than create a new way to implement thin-client block-mode applications in the style of the venerable 3270 terminal. Like the 3270, HTML provides batched-up form submission. Character-based applications ultimately gained efficient user-navigation systems, but that was all lost when GUI applications came along. Subsequently GUI applications added back their own navigation structures, using the mouse and widget feedback. When HTML forms came on the scene, they copied the design of block-mode terminals, but without the tight navigation and without replacing it with a proper GUI equivalent. Under HTML, the user is left to guess which visual elements on a given page might be user controls and which are just decorations. Therefore, for GUI-driven applications, HTML isn't that great a starting point. That's the reason why Java applets were met with such positive market hysteria when they first appeared -- they presented an opportunity to provide a real GUI.

Hygroscopic answered 17/8, 2013 at 21:50 Comment(1)
I don't think google maps "is a java applet" since most mobile don't even support applets, AFAIK.Crenel

© 2022 - 2024 — McMap. All rights reserved.