HTML 5会取代Flash吗?学习Flash是否值得投入时间?

19

近年来,苹果总是成为媒体关注的焦点,推出了各种“i”字开头的产品。人们对苹果的最大不满之一是缺乏对Flash的支持。去年我也持有同样的看法,苹果选择不支持Flash似乎毫无道理。然而,HTML5似乎改变了这一切。Flash最受欢迎的用户之一是YouTube,他们已经开始使用HTML5技术 (http://www.youtube.com/html5)。尽管如此,我仍然在这两种技术中犹豫不决。

你认为一个初学者应该学习Flash还是应该把精力放在学习HTML5上?


12
Flash从来都不值得学习。/观点 - Dolph
5
@Dolph Mathews,你的论点并不十分有说服力。在我看来,青豆从来都不值得一吃,但有些人仍然喜欢它们。 - ubiquibacon
4
我没有费心去进行辩论。 - Dolph
21
那么你还不如不发布。这不是一个练习打字的网站。;P - fenomas
2
当使用HTML5可以完成与Flash相同的事情时,它将取代Flash。例如,音频标签无法像Flash一样做到某些事情。使用jQuery可以实现大多数Flash可以做到的事情,但是当您需要运行大量动画时,HTML5画布并不总是最佳选择。HTML5具有非常实用的优点,但由于HTML5尚未完成,因此您不能完全依赖它。特别是在所有主要浏览器中,音频(格式支持)和视频(编解码器支持)存在差异。但我同意,选择HTML5是一个好主意,因为它可以在任何平台上运行。最好同时支持两者。 - Codebeat
1
苹果公司放弃Flash的平台支持,其原因是它可能与App Store中的应用程序竞争。由于Flash是一个插件,它可以利用操作系统的所有优势。也许你已经知道Web应用程序(HTML5)不能像本地应用程序一样做到这一点。当Flash得到支持时,就不需要使用App Store来部署你的应用程序,这正是苹果希望避免的。事实上,苹果“讨厌”Flash并不是因为速度方面的问题或其他什么(他们不想告诉你真相),只是因为App Store,Flash可能构成威胁。 - Codebeat
18个回答

21

简单和开放的胜利。每一次。学习HTML5。

我认为有趣的是听到苹果和史蒂夫·乔布斯抨击封闭标准。然而,苹果的电脑始终是硬件和软件的封闭集成。


35
我讨厌苹果公司新的“我们是如此开放的公司”的伎俩,只是因为他们推HTML5而不是Flash(没有别的动机,哈哈)。苹果就是穿着更时尚的微软。 - Pierreten
3
苹果产品只能在苹果设备上使用。Flash在网页上是不支持的。你和我都是为网页开发而努力。这就是乔布斯所说的。 - Rob
1
如果没有人知道,那些贡献能有多好呢? - duffymo
2
@duffymo,我倾向于同意。我的阅读表明,苹果希望显得“开放”,但实际上它们相对较为“封闭”。真正的开放平台是完全开放的,这一点毫无争议。Linux是开放的,任何人都可以随心所欲地使用它。Java是开放的,我们都可以看到源代码。而苹果则不是那么开放。即使你想发布应用程序,也必须经过他们的审核。微软甚至都没有这么封闭。我并不真的喜欢苹果,但我承认iPhone是一款伟大的设备,可惜只有越狱和解锁后才能发挥其全部潜力。 - ubiquibacon
1
我一直的理解是,史蒂夫·乔布斯不喜欢Flash是因为它很糟糕,并且他有能力对此做出改变。他不在意别人的说法,因为他总是正确的(至少是在他自己的想法中),而且他没有一个充分的理由去看待辩论的另一方。任何其他的解释都只是借口和辩解 - 在一天结束时,史蒂夫认为它是垃圾,所以他不会在他的平台上使用它。 - Ori Pessach
显示剩余4条评论

15

让我们务实一点。

Flash技术在短期内不会被替换,至少还有几年时间是因为这种技术现在使用太广泛了。

现在,由于AS3 / Flex并不难理解和使用,你也许应该学习这两个内容,一个接着一个地学,但最终都要学。 如果你没有时间学习两个知识点(即使是一个接着一个),则选择更适合当前项目的那个。 遵循实用主义原则。

因为HTML5仍将成为标准且广泛使用的语言/平台。它与Flash不同(后者更像是一个跨平台的图形引擎),但未来网站的所有版本都将利用它。


我能理解你的想法。Flash现在无处不在,而且像@Kevin所说的那样,它不会在两周内消失。如果我得到(或想要)一份编程工作,我想它肯定会在某个时候对我有所帮助,但是知道如何做很多事情可能也会在某个时候对我有所帮助。不过我没有时间学习所有这些 :) - ubiquibacon
然后选择看起来现在最有用的工具。如果你开始学习它,然后发现它不是适合这项工作的正确工具,你会学到一些东西,并且可能还有足够的时间去了解其他工具。这不像你试图学习C++那样。 - Klaim

7

这可能是一个不受欢迎的答案,但 Flash 不会很快消失。不要听信苹果公司的说法,查看工作机会。事情很容易被炒作,虽然 Flash 的寿命现在可能已经有限,但它并不会在两周内消失。


好的观点,无论行业走向如何,Flash 都将在一段时间内存在。 - ubiquibacon

4
几乎我们程序员所使用的任何技术迟早都会过时。但这并不意味着我们不应该学习任何技术。
很多人在他们的电脑上安装了Flash,这就意味着它不会很快消失。但它是否会成为主流技术还有待观察。Adobe可能会对平台进行重大改进,或者在长期内会发生许多其他事情。
作为一种今天开发技术,我可能会选择Flash。如果你想学习更容易转移到其他语言的技能,我认为HTML 5是更好的选择。无论哪种方式,学到的知识都会使你变得更加聪明,没有人可以夺走。

好的观点,我确实喜欢学习,但我想先获取对我最有益的知识。由于我只编程不到一年,我想确保我专注于那些对我最有帮助的技术。 - ubiquibacon

3

学习Flash是否值得我的时间?

不值得,这与HTML 5无关。


5
他的观点是 Flash 很糟糕,无需将其放入此处的背景中加以说明。 - Paul
4
没有论据就不能点赞,这只是一个空洞的说法。我明白应该有哪些论据,但对我来说那不是一个有效的回答。请添加一些论据以使其更清晰。 - Klaim
1
被投票反对了。这只不过是一场无意义的口水战。 - Myk
1
@typoknig:即使HTML5还不存在,你也不需要学习Flash来使用视频——已经有大量的Flash视频播放器存在了。你不需要任何Flash知识来使用它们。 - DisgruntledGoat
1
@typoknig:我想表达的是,你不需要制作Flash网页。目前唯一好用的地方只有视频,直到HTML5得到良好支持并接管为止。因此,在我看来,你根本不需要学习Flash。我从未学过Flash,但作为一名网站开发者,我生存得很好。 - DisgruntledGoat
显示剩余2条评论

2

ActionScript(Flash的编程语言)基本上是ECMAScript(JavaScript)的一种。这两种语言有很多相似之处。

目前唯一的问题是浏览器是否支持H5技术。


我猜这对Flash来说是个好兆头,但同样的,HTML5也将从其他众所周知的HTML标准中“跨界”。浏览器支持肯定是一个问题,但你认为大型浏览器(IE、Chrome、FireFox和Safari)何时会支持HTML5草案?我想不久,特别是对于Safari来说。 - ubiquibacon

2
很讽刺的是,您引用了HTML5版的YouTube作为HTML5应用的例子,但它只在10%的浏览器中有效。这个数字只有在IE和Firefox支持它之后才会改善。即使那时,HTML5标准也要等两年才能完整。
现在对Flash进行批评很容易(并且似乎很流行),但事实上,Flash在创建今天的媒体丰富的网络方面起到了重要作用。尽管有缺点,至少不是“五年迟到”,而且还在继续发展。HTML5突然变得如此受欢迎似乎有些不恰当,因为它只是让我们拥有五年前已经有过的东西(除了本地支持外,而不是基于插件,并且比Flash更高效,但不比Silverlight更高效)。它的极长标准化过程(2012年完成规范,2022年成为推荐状态)一定让那些人感到非常沮丧。
是否学习Flash完全取决于您想做什么。构建一个只针对一般公众可见且不特定于苹果硬件的HTML5应用程序是一个非常糟糕的主意。正如所说的,您将无法覆盖超过10%的用户。即使它具有Flash的普及性(至少还需要两年),这并不意味着没有使用Flash或Silverlight的必要了。HTML5标准提供了一些最受欢迎的Flash功能,但不会提供诸如实时流媒体或DRM之类的东西。插件将在很多年内保持存在,并且很可能永远不会消失,因为它们旨在扩展浏览器,并且无论Web标准变得更加完整,总会有某些东西缺失。
从商业角度来看,如果您想创建富媒体网络应用程序,则需要Flash或Silverlight。

2
很难一概而论,挑选一个胜过另一个。一个是动画插件,另一个是标记语言。你总会需要标记语言,Flash则依赖它来运行。 HTML5不会淘汰Flash。问题在于Flash能否在智能手机市场获得任何立足之地。到目前为止,情况并不对Adobe有利。在桌面上,Flash仍然很强劲。
我认为学习Flash是值得的,尤其是如果你在广告和出版等以传播为基础的行业中。学习创建基于动作的内容的工具永远不会有坏处。别忘了,在必要时,Adobe可以让Flash Pro工具渲染出基于HTML5的内容。你不会被抛弃。
现在我只使用HTML/CSS/JavaScript进行工作,但我也有相当多的Flash经验,我很高兴自己有这方面的知识。掌握其中一项技能会增强另一项技能。因此,专注于一项,但两者都要学习。你不会后悔的。

Adobe和Android携手合作,我认为这是Adobe在智能手机市场上的一个很好的立足点。如果谷歌像糖果一样不断赠送Andriod设备,那么Android很快可能会成为最大的市场份额 :) - ubiquibacon
我确实希望Flash能够成为像智能手机这样的小型低功耗设备上的一流公民。Flash本身也会因此变得更好。如果Adobe能够交付,这对Google来说也将是一个巨大的荣誉。 - Egor Kloos

1

Flash是一种专有系统。HTML5是一个开放的标准。尽管现在HTML5可能可以赶上Flash,但很有可能Flash将继续比HTML5更快速地发展,因为Adobe可以做他们想做的。

据我所知,HTML5目前也不支持像游戏等Flash的某些当前功能。


HTML5尚未最终确定,因此很难说最终版本将提供什么,但如果它不支持游戏开发,那么我想Flash仍然有其存在的空间。至于视频方面,我认为YouTube的beta播放器看起来非常有前途。 - ubiquibacon
视频是一回事,但带有DRM和嵌入式提示点以及帧内像素分析和Flash中的所有其他功能则是另一回事。当然,某些浏览器可以本地播放某些视频 - 但请向我展示一个正在运行动态生成的视频播放列表并与服务器端后端进行广泛关联并具有能力的浏览器,例如根据用户输入无缝更新当前播放的视频。它不存在。 - Myk

0

如果你想开发iPhone/iPad的应用程序,就别考虑Flash,使用苹果的工具。这是他们想要的方式,除非他们受到法律迫使(不太可能),否则他们不会允许其他任何东西。

在桌面环境中Flash仍然相当普遍(可能也很快会出现在Android上,但我得看看才能相信)。据我所知,目前Flash仍然可以做很多HTML5无法完成的事情。但这将最终改变。然而,Flash可能总是会有更多的功能,因为它是专有的,并且他们可以更快地对其进行改进,而这种变化需要一个像HTML5这样的开放标准。但我怀疑Flash最终会变成像IE一样:它将拥有自己独特的一套功能,但没有人会关心,因为更基本、但广泛采用的HTML5标准更易于开发,也更好。

现在,我们似乎处于冲突期,其中一种技术试图接管另一种技术。在这种情况下,对你来说最好的做法是什么?短期内,学习Flash是一个好主意。从长远来看,了解HTML5将是必不可少的。


我对开发iPhone应用不是那么在意,我只是拿Apple作为一个例子。我个人认为Apple反对Flash是没有必要的,并且这也是我没有iPhone的原因之一。在我看来,Flash是一种被证明有效的技术,在网站开发中填补了一定的空缺,但当它的延续未来看起来如此黯淡时,我很难承诺使用Flash。 - ubiquibacon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接