为什么applet具有如此低的采用率,例如与Flash相比?是因为它们是技术上的缺点,还是仅仅是受欢迎的问题?
每个人似乎都忘记了一点:最初Flash有一个非常以设计师为导向的工作流程,因此许多图形设计师跳上了船,制作了很酷的东西,互联网用户觉得很有趣,所以他们会下载Flash,社区也在增长.
另一方面,Java Applets面向程序员和企业,这很好,但对普通用户来说很无聊.最重要的是,当时的脚本小子(包括我自己)制造了泄露资源和/或冻结浏览器的Applet,甚至其他更熟练的小孩也使用Applet的功能来创建陷阱和有害网站,所以大多数互联网用户不会启用Applet.
所以最终可能是导致问题的每个平台的目标开发人员(图形设计师与程序员).
Java vs Flash然后现在:
然后:
Flash有一个单击安装程序,下载和运行需要2分钟.Java有一个安装程序,下载和运行需要10分钟.
Flash应用程序在不到一秒的时间内加载.Java小程序耗时10秒.
Flash应用程序往往是自包含的,并且"只是工作".Java小程序倾向于引用外部资源.破坏的链接频繁出现,applet引擎受到稳定性问题的困扰,这些问题有时会导致整个浏览器崩溃.
Flash的采用率一直处于历史最高水平,因为它随Windows一起提供.Java没有.
现在:
Sun推出了一款名为Java Kernel的单击安装程序,下载并运行需要2分钟.
Java6更新12在一秒钟内加载applet.
Java applet现在在与浏览器不同的进程中运行,并且引擎已经从头开始重写.稳定性问题已成为过去.不幸的是,网络仍然充满了包含断开链接的旧applet.
Java是大多数新计算机的标准配置.Java采用率从70%到90%不等,取决于您与谁交谈.随意测量自己的网站.
剩下的一大差异是Flash拥有比Java更好的面向艺术家的工具.话虽这么说,有一大堆软件可以在Java中比在Flash中更容易,更有效地编写.Java是一个更加成熟和可扩展的平台.您会看到许多人使用Flash进行广告横幅广告,但是有更多人将Java用于成熟的应用程序或游戏.例如,比较Java与Flash中的3D渲染支持.
早在20世纪90年代,当Sun向全世界推出applet时,JVM速度很慢,applet也慢了.想想"等待十五分钟才能完成装载"慢.
缓慢的技术是死技术.速度并不是Flash及其同类产品对Java applet的唯一优势,但它是导致其下降的主要原因.
我假设你在谈论Java applets.
我认为Flash采用的最大优势之一是具有吸引人且易于使用的工具的单一开发环境.这得到了丰富的培训材料的赞扬.它基本上也是单一目的,而Java有各种各样的用途和目标受众.
直到最近,Java applet相当繁重.任何Java Applet都需要JVM启动并加载applet,这在现代机器上可能需要一些时间,而在Java引入时的机器上甚至更慢.此外,与Flash相比,Java Applet有点复杂,并且因此会出现许多问题(需要签署您的applet?这对开发人员来说可能是一个巨大的痛苦).此外,Flash迅速开发了一个产品生态系统,可以快速,轻松地完成人们想要的产品(有趣的图形!),而在Java中,除了按钮和复选框之外的任何东西(已经在基础浏览器级别提供的东西)需要更多的工作,而不是几乎得到了闪存的支持.