一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機編程>

HTML5所面臨的一些困境

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

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

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

      發(fā)表評論,獲取積分! 請遵守相關規(guī)定!

      ?