在RIA领域,我读到了大量的评论,说关于Silverlight、JavaFX、Flash和HTML5的讨论已经过时了,赢家是HTML5。
由于我是一名程序员(不是设计师),但从未使用过上述任何一种技术,而且我没有时间学习所有这些技术来进行比较,我想问一下:
1)对于HTML5,我们仍然只有解释性的JavaScript,或者我们可以使用更强大的语言来生成编译的代码(内部的某种MSIL或字节码……标签)?
2) HTML5是否向不受欢迎的查看者隐藏了我们的部分代码(就像过去的Java和ActiveX那样),还是“查看-源代码”选项继续显示我们的所有工作?
3) HTML5需要某种运行时,还是所有的工作都由浏览器完成?
发布于 2013-12-10 00:46:58
你的问题有一点基本的问题,因为HTML5不是一个真正的东西。很难将它与Java或Flash进行比较,后者都是编程语言。可以在不使用HTML5的任何特性的情况下使用HTML和JavaScript创建交互式应用程序。这似乎经常发生,但为了简单起见,通常将这些称为HTML5应用程序--尤其是非技术人员。
1)我要说的是,即使在网页上,JavaScript也可以与您所谈论的其他编译语言一样强大--特别是使用<canvas>的强大功能。您已经发现HTML5获胜是有原因的。在我看来,它可以做其他人能做的事情,而且实现起来更简单。
然而,没有什么能阻止你在JavaScript中包含Applets的Flash对象,它们甚至可以交互。
2)没有什么可以阻止所有的HTML/JavaScript在浏览器中被下载并以纯文本的形式被查看,尽管它可以被Uglify之类的工具混淆。
也可以从web界面下载和反编译swfs和jars,所以编译不一定会给你提供很多保护。您的代码将受版权保护(至少在美国是这样),您也可以使用许可证the MIT license。
3)所有工作都是由浏览器完成的。客户端只需要一个浏览器来运行您的代码,但是有些浏览器不支持您可能想要使用的某些功能。这尤其适用于较旧的浏览器。
有大量的框架和库可用于创建富HTML/JavaScript应用程序,但它们大多只是JavaScript文件。
发布于 2013-12-10 01:06:06
HTML5是一种品牌和趋势。在silverlight/flash/html之战中,HTML肯定是赢家。因为浏览器不能进行零碎的操作。这是真的吗,那么一部分功能是在浏览器插件中开发的,另一部分是在浏览器中开发的。对于强大和快速的进展,在开始时,总是需要向量。在重新定义我们生活中的网络时,这样的载体就是HTML5。HTML5不是一种语言,它是一组功能,如视频、音乐、webgl、地理位置、语义本质等等,这些功能越来越多地来自浏览器。我们不能在这里像谈论一种语言一样谈论HTML5。
你所有的问题都是关于javascript的。
bytecode inside <object> ... </object>?使用Chrome本机客户端。asm.js这样的javascript的“子集”,它只比C++慢2倍。https://stackoverflow.com/questions/20475711
复制相似问题