在RIA领域,我读过大量评论,指出关于Silverlight与JavaFX vs Flash与HTML5的讨论已经过时,获胜者是HTML5。
由于我是程序员(不是设计师),但从未使用过上述任何技术,我没有时间学习所有这些技术进行比较,我想问下列内容:
1)对于HTML5,我们继续只解释JavaScript,或者我们可以使用更强大的语言生成编译代码(某些类型的MSIL或字节码在< object> ...< / object>标记内)?
2)HTML5是否隐藏了部分代码来自不受欢迎的观看者(如过去的Java applet和ActiveX)或“View - Source Code”选项继续显示我们所有的工作?
3)HTML5需要某种运行时或者所有工作都是由浏览器完成的吗?答案 0 :(得分:1)
您的问题存在一些基本问题,因为HTML5
并非真正的事物。很难将它与Java或Flash(编程语言)进行比较。可以使用HTML和JavaScript创建交互式应用程序,而无需使用HTML5的任何功能。这似乎发生了很多,但为简单起见,这些通常被称为HTML5应用程序 - 尤其是非技术人员。
1)我想说JavaScript可以像你在网页上谈论的其他编译语言一样强大 - 尤其是<canvas>
的强大功能。您发现HTML5因某种原因而获胜。在我看来,它可以做其他人可以做的事情,并且更容易实现。
但是,除了JavaScript之外,没有什么禁止将Applet的Flash对象包括在内,甚至可以进行交互。
2)没有什么可以阻止您的所有HTML / JavaScript在浏览器中下载并以纯文本格式查看,尽管可以使用Uglify等工具对其进行模糊处理。
也可以从Web界面下载和反编译swfs和jar,因此无论如何编译都不一定能为您提供很多保护。您的代码受版权保护(至少在美国),您也可以使用许可the MIT license。
3)所有工作都由浏览器完成。客户端只需要一个浏览器来运行您的代码,但某些浏览器不支持您可能想要使用的某些功能。这尤其适用于旧版浏览器。
有大量的框架和库可用于创建丰富的HTML / JavaScript应用程序,但这些只是JavaScript文件。
答案 1 :(得分:0)
HTML5是一个品牌和趋势。在silverlight / flash / html战斗中,HTML必须是赢家。因为浏览器无法进展零碎。是否真的是在浏览器插件中开发的某些功能部分,某些部分在浏览器中。对于强大而快速的进展总是在开始时需要向量。在重新定义我们生活中的网络时,这样的矢量是HTML5。 HTML5不是一种语言,它是一组功能,例如视频,音乐,webgl,地理定位,语义本质以及越来越多的只来自浏览器。我们不能在这里像HTML语言那样谈论HTML5。
您的所有问题都与javascript有关。
bytecode inside <object> ... </object>
?使用Chrome Native Client。asm.js
这样的javascript“子集”,它比C ++慢2倍。