<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>通訊/手機編程>

HTML5所面臨的一些困境

大?。?/span>0.6 MB 人氣: 2017-10-11 需要積分:1
 過去這些年,HTML5幾乎已經徹底改變了PC 互聯網甚至移動互聯網的格局。
  縱觀 HTML5 的發展史,一波三折,有用戶的需求在推動,有技術開發者的需求在推動,更有巨大的商業利益在推動。如今,隨著4G的普及以及手機硬件性能的飛速發展,HTML5一直被詬病的性能問題逐漸被淡化,HTML5也逐漸被人們接受成為信息和應用的載體。過去的2015年,HTML5的確得到蓬勃的發展,尤其在微信朋友圈的營銷上。然而,HTML5要走出微信朋友圈,在各種場景下得到廣泛的使用,還有很長一段路要走。
  接下來我們來分析一下HTML5面臨的一些挑戰。
  HTML5并非聽上去那么完美
  業界一直都說HTML5的殺手級武器是跨平臺,意思是,相比原生APP要針對不同手機操作系統做開發,HTML5只需一次開發,就可以在所有操作系統上運行。
  HTML5 是唯一一個通吃 PC、Mac、iPhone、iPad、Android、Windows Phone 等主流平臺的跨平臺語言。Java 和 Flash 都曾夢想這個位置,但都夢斷于 iOS。此時人們紛紛開始研究基于 HTML5 開發跨平臺手機應用,很多人都認為,原生應用只是過渡,就像當年從 C/S 結構轉變為 B/S 結構一樣。而且學習 Objective-C 和 Java 很費勁,既然會網頁開發,為何不試試 HTML5。
  然而,HTML5畢竟只是一個技術標準,所以跨平臺確實跨平臺,但只是理論上的跨平臺。
  在實際應用過程中,大家會發現各種瀏覽器之間存在各種各樣的差異性, 導致HTML5頁面在不同瀏覽器上顯示的效果不一致,于是要經過大量的兼容性測試和修復才能真正實現“一次開發,所有平臺完美運行”的理想,而這樣的工作量并不小。對此,大家可能有疑問,HTML5不是國際標準么,瀏覽器都遵守HTML5國際標準來開發的話,不應該出現不一致???
  其實,這里面有多方面的原因:
  1)HTML5的功能是個巨大的集合,瀏覽器產商不可能在一個版本開發周期中實現所有的HTML5能力,每個版本都只能開發一小部分子集。不同的瀏覽器產商會根據自己對市場的判斷以及公司的戰略,制定自己的開發路線圖,所以自然會出現不同瀏覽器支持的HTML5功能集合不一致;
  2)W3C一直把制定的標準文檔定義成“Recommendation(推薦)”,也就是說,HTML5并不是一個強制的標準。如果開發者寫的HTML網頁不符合標準,瀏覽器依然能夠顯示。事實上,互聯網上有95%以上的網頁都是不符合W3C標準的。 結果就是,網頁中有大量的異常情況,需要瀏覽器自己去修復。如何修復不標準的網頁并沒有一個固定做法,所以不同瀏覽器產商都有自己的一套解決方式。這也導致了各個瀏覽器雖然都是按照相同的W3C來開發的,但是最后的代碼算法是不同的,繼而導致了顯示結果不一致;
  3)互聯網是個高速發展的市場,每個瀏覽器產商都要為適應新的市場變化開發具有足夠創新升級版本。然而向前創新和向后兼容往往是矛盾的,所以瀏覽器產商在新版本中可能會做出一些巨大的代碼調整。然而,瀏覽器是安裝在用戶手機上客戶端程序,用戶有權利選擇是否進行升級。這就導致了即使是同一個產商的瀏覽器,你還得為它的不同版本做相應的兼容性修復。這一點相信大家在PC時代的IE瀏覽器上都吃過很多苦頭,每個前端開發者都需要為 IE6、IE7等不同版本做出大量的工作;
  4)今天的手機操作系統是個非常碎片化的市場。安卓的開發性為它帶來了高速的市場覆蓋,但同時也帶來了極度碎片的版本分支。幾乎每個手機產商都會做一些定制,以實現自己在市場上的差異化。小米有MIUI、華為有EMUI、三星有TouchWiz等等。手機操作系統自帶的默認瀏覽器也會做相應的定制,因此導致HTML5網頁在不同手機操作系統的默認瀏覽器上顯示不一致。由于很多第三方App內嵌瀏覽器一般都直接調用了操作系統自帶的瀏覽器內核,從而導致網頁在了不同手機上顯示效果不一樣,這點在混合App(Hybrid App)中體現尤為明顯。
  如何解決HTML5在實際應用中的兼容性問題?
  上面提到了諸多HTML5不能真正跨平臺的原因,可能很多朋友們就要問了,如何解決?其實解決HTML5在實際應用中的兼容性難題,真正實現HTML5的跨平臺,有兩個途徑:
  1)通過HTML5的底層框架來屏蔽不同瀏覽器的兼容問題,所有的HTML5應用在框架之上來開發。像國外的Bootstrap、jQuery UI等都是很好的UI框架,基于他們之上來開發可以減少大量的兼容性調試工作。 當然,這些國外的UI框架都是針對國外的審美觀、國外的主流瀏覽器和操作系統,國產的Amaze UI 也是類似的框架,但是針對國內網民的樣式喜好以及主流移動瀏覽器或帶有瀏覽器功能的App(比如微信)做了大量的調整優化;
  2)通過讓用戶使用自有內核的固定瀏覽器,這樣就不存在兼容多個瀏覽器或者操作系統的問題了。然而,對于普遍的大眾網民,沒有任何一個企業或者是組織強制大家使用哪一款瀏覽器。但是,在企業內部辦公的場景中,這種方式是比較可取的。一方面,公司的員工數目有限,一般就幾千人上萬人,不像互聯網好幾億網民,所以IT開發人員花大量時間去做兼容性測試和修復是一件投入產生比很低的事情,對公司效益沒有任何幫助;另外一方面,市面上各種瀏覽器的安全能力參差不齊,讓員工自由選擇瀏覽器是一件風險很大的事情,極有可能會導致企業數據泄露或者木馬入侵。因此讓員工使用公司經過安全認證的固定瀏覽器,一方面大幅度減輕IT開發的工作量,另外一方面有效保障企業數據安全,事半功倍。
  說到這里,就不得不說一下專門的企業級瀏覽器Enterplorer,這是云適配自主創新并且擁有獨立內核的企業級瀏覽器,專門為企業移動辦公使用場景而開發。一方面它的跨平臺的自有內核能夠屏蔽安卓操作系統之間的差異性,讓你的HTML5應用無論運行在什么安卓手機上都有一致的表現,真正實現“一次開發、到處運行”;另外一方面,Enterplorer內核為企業做了完備的安全加密(包括:緩存加密、Cookie加密、下載文件加密等)以及后臺管理(包括:設備管理、權限管理、遠程數據擦除等),不但保證企業的數據安全,而且讓企業管理員可以做實時的統一管理。
  不管怎樣說,雖然HTML5跨平臺的能力受限于操作系統的碎片化,仍然顯得不完美,但是其天然的跨平臺能力已經在很大程度上為開發者們帶來了巨大的價值。原因不言而喻,對于開發者而言,除了iOS,安卓,開發者為什么不愿意再開發 WP 版本,很多時候是因為工作量太大,除了版本適配,分辨率調整等,一旦有新版本推出,在原生 App 中開發者不得不等待多達兩周時間去接受審核,跨平臺在多屏時代給開發者非常痛苦的體驗,人們都期待當年 Java 的一次編譯處處運行的理想情況。而HTML5 目前正在扮演這樣一個開發者救星的角色,這里面只需要有一個統一的企業級瀏覽器就可以了。
?

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
      <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
      <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
      <acronym id="s8ci2"></acronym>
      <acronym id="s8ci2"><center id="s8ci2"></center></acronym>