2013-12-09 163 views
1

在RIA領域,我讀了大量的評論指出,關於Silverlight vs JavaFX vs Flash vs HTML5的討論已經過時,獲勝者是HTML5。Web開發的客戶端

因爲我是一個程序員(不是設計師),但從未使用過上述任何技術,我沒有時間去學習所有的人來比較,我想問下:

1)隨着HTML5我們繼續只解釋JavaScript,或者我們可以使用更強大的語言生成編譯代碼(某種類型的MSIL或字節碼<對象> ... < /對象>標記)?

2)HTML5是否隱藏了我們代碼中不需要的部分(如過去的Java applets和ActiveX)或選項「View - Source Code」繼續顯示我們所有的工作?

3)HTML5需要某種運行時或者所有的工作都是由瀏覽器完成的?

+0

HTML5只是HTML,CSS和JS中的一組新功能。它不會改變他們的工作方式。 – SLaks

+0

您可能會對ASM.js感興趣,它允許特殊編寫的JS以更快的速度運行。 – SLaks

回答

1

有一個基本的問題與你的問題HTML5不是真的東西。很難將其與Java或Flash(它們是編程語言)進行比較。可以使用HTML和JavaScript創建交互式應用程序,而無需使用HTML5的任何功能。這似乎發生了很多,但爲了簡單起見,這些通常被稱爲HTML5應用程序 - 尤其是非技術人員。

1)我會說JavaScript甚至可以在網頁上與其他編譯語言一樣強大 - 尤其是在<canvas>的強大功能下。你已經發現HTML5贏得了一個原因。在我看來,它可以做別人可以做的事情,而且更容易實施。

雖然沒有什麼可以阻止您將Applets的Flash對象包括在JavaScript中,但它們甚至可以進行交互。

2)沒有什麼能夠阻止您在瀏覽器中下載所有HTML/JavaScript並以純文本形式查看,儘管可以使用諸如Uglify之類的工具對其進行模糊處理。

也可以從Web界面下載和反編譯swfs和jar,所以編譯並不一定能爲您提供很多保護。您的代碼將受版權保護(至少在美國),您也可以使用許可the MIT license

3)所有的工作都是由瀏覽器完成的。客戶端只需要一個瀏覽器即可運行您的代碼,但某些瀏覽器不支持您可能要使用的某些功能。這尤其適用於舊版瀏覽器。

有很多框架和庫用於創建豐富的HTML/JavaScript應用程序,但這些只是大多數只是JavaScript文件。

0

HTML5是一個品牌和趨勢。在silverlight/flash/html戰鬥中HTML必須是勝利者。因爲瀏覽器不能進行零碎。這是真的,然後在瀏覽器插件開發的功能的一部分,瀏覽器的一部分。對於強大而快速的進展,一開始就需要向量。在我們的生活中重新定義網絡這種矢量是HTML5。 HTML5不是一種語言,它是一組功能,如視頻,音樂,webgl,地理定位,語義本質以及更多來自瀏覽器的功能。而且我們不能像HTML5一樣在這裏講一種語言。

你所有的問題都關於JavaScript。

  1. 想要bytecode inside <object> ... </object>?使用Chrome Native Client。
  2. 想要隱藏你的代碼嗎?使用任何混淆器。
  3. 現代JavaScript引擎具有即時編譯功能。還有像asm.js這樣的javascript的子集,比C++慢2倍。