orketing獨家整理,轉載注明來源
從“神經貓”開始,HTML5的風暴只用半年時間便席卷了整個移動互聯網行業,讓本就躁動的互聯網再起波瀾。對于H5的未來,不少業界人士都有著較高的期待,但唱衰的也大有人在,即便HTML5標準的定稿也沒有使這樣的情況有所好轉。那么,對于H5人們分歧的焦點在哪?又都有怎樣的見解?小編根據最近的各家言辭,整理了目前討論最多的問題,進行了一場小PK。
一:HTML5固定標準VS動態標準
HTML5標準公布的意義在于制定了一個新的規范,建立了一個統一的平臺。未來,借助HTML5技術,開發者可快速開發各種移動互聯網應用,有助于在移動智能終端方面擺脫iOS、安卓、winphone等原生態應用的壟斷與限制,對此,業界反應普遍樂觀。
但爭執的焦點在于,W3C(萬維網聯盟)選用的是固定的標準,這就讓許多業界人士不滿,在此之前,W3C就因為與WHATWG(網頁超文本應用技術工作小組)“理念不同”而分道揚鑣。WHATWG認為互聯網的未來是很難預測的,將來會發生什么樣的變化或者誕生什么樣的事物,都是不可獲知,而如今就用這一固定的標準去推動H5的發展,顯然不太合理。在其看來,未來 HTML5 想得到真正的發展,核心問題并不是標準哪天定稿亦或是瀏覽器性能不足,關鍵在于標準的持續改進和生態建設。
當然,這個爭論涉及到各大巨頭間的商業競爭。無論如何,HTML5標準的定稿,對推動H5發展是顯而易見的。
二:Web App VS 原生App
要說H5的發展對誰沖擊最嚴重,原生App首當其沖。從蘋果手機為代表的智能手機揭開移動互聯網時代的序幕開始,原生App大行其道,在很大程度上扮演著移動互聯網的入口角色。但系統平臺間的格局以及版本的差異,卻掣肘原生App的發展,從而形成一個個以系統為中心的信息孤島,這些都是與標榜自由、開放的互聯網精神背道而馳的。
HTML 5之所以一經提出便廣受業界推崇,甚至被認為是移動互聯網領域改朝換代的利器,很大原因就在于其設計之初就確立的開放原則,基于此原則的兼容、實用與跨平臺性,能將App的中心從系統改為用戶,打破封閉格局,更好地服務于用戶。
H5理想很美好,現實卻很殘酷。不可否認的是我們已經習慣了iOS與Android生態系統的固定模式。從手機界面直擊點擊圖標進入應用被認為是最有效的方式。而H5應用進入模式卻需要以瀏覽器或超級App等第三方為跳板,方能進入web App界面。無疑,這樣的操作流程和用戶體驗難以讓人接受,H5依舊任重而道遠。
三:流量模式VS下載模式
HTML5無端免下載的特性決定了HTML5游戲在推廣方面具有先天的優勢,用戶進入游戲進行體驗的門檻更低。但是,流量模式運營的產品要基于大量的瀏覽量作為基礎,并且在捕獲用戶方面是“間接”的,而用戶體驗后,將其繼續留下的可能性要遠低于下載模式的原生APP。而基于下載模式,游戲產品還可以進入Appstore市場,留下排名、評分、還有相對成熟的渠道來吸引用戶。
此外,H5目前主要的渠道是瀏覽器,較單一的渠道形式使得這種流量模式受瀏覽器廠商的影響大,一旦瀏覽器出現問題,那意味著所有基于瀏覽器平臺的游戲和應用都將受到影響。
四:成本VS性能
H5受歡迎的一個因素是其遠低于原生應用的成本。大多數瀏覽器都有著相同的運行方式,一個應用幾乎可以在所有瀏覽器上運行,不像限定于只能在某一系統下運行的原生應用。并且,HTML5還允許不斷更新,開發者不需要再將新應用提交給應用商店等待批準。每次用戶登錄到該web應用時,都將獲得應用最新版本。這些都讓開發者節省了大量的時間和資金。
相對Web應用,原生應用最大的優勢就是可以訪問設備中的所有功能,運行的速度更快、性能更高,而且可以啟用優秀的離線處理和存儲能力。
五:H5游戲,機遇VS挑戰
一只表情賤賤的嘚瑟白貓在朋友圈中的瘋狂刷屏,讓人們第一次認識到H5游戲的魅力。隨后,眾多HTML5小游戲相繼在微信朋友圈中躥紅。使得很多電商和傳統行業的廠商紛紛借助HTML5小游戲進行產品營銷,以增強廣告的趣味性。這一切,讓開發者們看到了H5游戲在移動端的廣闊前景。他們期望借鑒PC端社交游戲向網頁游戲轉變的經驗,嘗試將極其輕度的HTML5游戲轉變為強用戶關系的社交游戲。另外,開發者甚至嘗試將HTML5游戲開發成依托瀏覽器的重度網頁游戲,讓玩家免于下載安裝即可體驗到大型重度移動端網頁游戲。而飛速發展的手機硬件和網絡速度為這一實現提供了物質基礎。
但這些都還只是業界人士的遐想,從目前來看,行業內在H5游戲的跟進力度明顯不足,現象級產品也遲遲未見。從“神經貓”之后,就再未出現讓市場為之震動的產品。由于現階段H5游戲的商業化模式還不成熟,因而鮮有公司明確表示要著手向重度研發,H5游戲更多還是在作為一種營銷工具,發揮其傳播速度和范圍方面的優勢。
六:生態缺陷VS巨頭涌入
目前H5不被看好的一個原因在于其生態圈的建設還未完成,生態缺陷讓許多希望轉入H5行業的開發者望而卻步。對于H5而言,瀏覽器廠商的支持一直是其得以發展的關鍵,但來自MAMA工具分析,完全符合W3C標準的只有4.13%的網站,其他50%的網站雖然都在HTML中標示自己符合W3C標準,但實際上在具體網站建設中很少嚴格按照標準執行。此外,被大家寄于厚望的超級 APP也沒有成為下一個機遇,微信的嚴格限制給H5開發者們澆了一盆冷水。
H5生態圈的建設雖不是一朝一夕可完成的,但各大互聯網巨頭的涌入無疑會加快這一進程。像百度推出了“輕應用”概念,并向開發者和企業推出了各種技術開放接口;微信發布JS SDK,QQ瀏覽器也在進行網頁應用的開放;阿里、360、搜狐等也是頻頻出手H5領域。而對于企業和開發者們來說,借助巨頭的平臺,開發更適合該平臺的輕應用能為自己帶來更多的流量和資源,實現對客戶更好的對接。隨著參與者的不斷增加,H5生態圈的建設也將逐漸完善,但這仍是一個長期的工程。
總結
在以上對比中,似乎H5并不占據上風,但不要忘了,H5應用才剛興起。與早已成熟的原生應用本就沒有太多的可比性。再者,H5的出現也不是以消滅原生為目的。兩者各有所長,就如有些開發者為了使H5更好地融入到當下生態系統中,主動將原生APP內嵌入webview訪問web頁面成為通行做法,用HTML5開發原生APP也早不是新鮮事。并且HTML5技術的進一步發展解決了原生APP生態的一些痼疾,例如APP的“孤島效應”。
總的來說,HTML5的發展是適應時代大勢,只是目前現實中還未有一款爆品來為其正名,從而帶動整個行業前行。一切都需要各家努力完善新的移動生態圈,才會迎來H5真正的春天。
學會這個VS Code技巧,摸魚的時間又變多了
---
**引子:提升編碼效能,解鎖更多閑暇時光**
在競爭激烈的Web前端開發領域,如何更高效地運用工具至關重要。本文將揭示一項被低估的VS Code核心技巧,它將大幅提高你的編碼速度,進而釋放出更多屬于你自己的“摸魚”時間(這里指有效率地休息和自我提升的時間)。
---
**【第一部分】巧用Emmet插件,瞬間構建HTML結構**
**標題:打造HTML的樂高積木**
**實例1:一鍵生成HTML5基礎骨架**
只需在VS Code編輯器中輸入`html:5`,然后按下Tab鍵,即可生成完整的HTML5基本結構:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
</html>
```
**實例2:快速生成復雜的HTML元素集合**
使用Emmet表達式可以迅速構造復雜的HTML列表,例如輸入`ul>li.item$*5`并按Tab鍵,將生成:
```html
<ul>
<li class="item1"></li>
<li class="item2"></li>
<li class="item3"></li>
<li class="item4"></li>
<li class="item5"></li>
</ul>
```
---
**【第二部分】JavaScript神器:IntelliSense助力智能編程**
**標題:智能提示,讓JS編寫如虎添翼**
在VS Code中,內置的IntelliSense特性提供了強大的代碼提示與自動補全功能:
```javascript
// 實例:智能提示與自動補全
let arr=['apple', 'banana', 'cherry'];
arr.f // IntelliSense此時會列出所有數組方法,如filter、forEach等
// 自動導入模塊
import React from 'react'; // 在使用React組件時,編輯器會自動識別并提示導入語句
```
---
**【第三部分】實時錯誤檢查與快速修復——ESLint的魅力**
**標題:告別手動排查,迎接即時糾錯時代**
安裝并配置ESLint插件后,VS Code能實時檢查JavaScript代碼中的錯誤并提供修復建議:
```javascript
// 錯誤示例及即時反饋
function add(a, b) {
return a + b;
}
add('2', 3); // 這里的類型錯誤會被ESLint立刻捕捉并標注
// 只需點擊錯誤提示,編輯器便會提供可能的修復方案
```
---
**【第四部分】無縫集成終端與Git版本控制**
**標題:一站式解決方案,無需跳出IDE**
- **集成終端**: 直接在VS Code內開啟集成終端,執行諸如啟動本地服務器、運行npm腳本等各種命令行任務。
- **內置Git支持**: VS Code具備完善的Git功能,無需離開編輯器界面就能查看差異、提交更改、切換分支等,大大簡化了版本控制流程。
---
**尾聲:掌握高效之道,悠享“摸魚”之樂**
熟練應用以上VS Code高效開發技巧,不僅能提升你的編程效率,還將無形中拓寬你的時間維度。把節省下來的時間用于拓展知識邊界、調整工作狀態或是純粹的放松,都是明智之舉。記住,“摸魚”的真諦在于勞逸結合,持續優化自己的工作與生活質量。現在就開始行動吧,用技術的力量為自己贏得更多的自由時間!
建HTML5應用要點
內存和性能限制是HTML5移動應用開發的關鍵因素。開發人員不但要小心控制頁面流量,并且控制如何實現DOM。對象模型越復雜,打開網頁所需的時間越長。
最重要的是,開發人員必須考慮用戶體驗。為確保用戶體驗質量,HTML5移動應用應該是輕薄的,這樣性能并不落后。此外,管理員應該在各種平臺上測試應用,在不同的設備類型,屏幕尺寸,瀏覽器和操作系統上的表現。大多數應用需要支持離線操作,以應對連接中斷。
HTML5應用 VS. 原生應用
與HTML5應用不同,原生應用是基于應用運行平臺的原生語言。原生應用的挑戰在于——每個平臺都需要自己的應用,而一些平臺需要不同版本的應用來支持該平臺上不同的設備。
HTML5與平臺無關。只要用戶通過支持各語言功能的瀏覽器訪問應用,應用在任何平臺都一樣運行。此外,管理員只有一個代碼庫用于維護,一個語言包用于部署HTML5。他們可以在必要時提供漏洞修復和更新,甚至不需要像原生應用那樣分發,就可以與用戶進行實時測試。
盡管HTML5已經取得了很大的進步,但它不能實現所有原生功能,比如多點觸控手勢,和與內置設備組件無縫集成,比如GPS。原生應用性能表現更出色,因為它們是機器代碼的一部分。HTML5應用如果沒有精心設計,加載時間將很漫長。
此外,HTML5應用和任何Web應用面臨同樣的風險。開發人員必須防范網絡攻擊,不當的API使用,通過Wi-Fi,藍牙或文本消息訪問設備的惡意代碼。
HTML5中提供了localStorage對象可以將數據長期保存在客戶端,直到人為清除。
localStorage提供了幾個方法:
1、存儲:localStorage.setItem(key,value)
如果key存在時,更新value
2、獲?。簂ocalStorage.getItem(key)
如果key不存在返回null
3、刪除:localStorage.removeItem(key)
一旦刪除,key對應的數據將會全部刪除
4、全部清除:localStorage.clear()
某些時候使用removeItem逐個刪除太麻煩,可以使用clear,執行的后果是會清除所有localStorage對象保存的數據
5、遍歷localStorage存儲的key
.length 數據總量,例:localStorage.length
.key(index) 獲取key,例:var key=localStorage.key(index);
.增加更加合理的標簽
多媒體對象將不在全部綁定在object或embed標簽中,而是視頻有視頻的標簽(<video>),音頻有音頻的標簽(<audio>)。
5.支持音頻的播放/錄音功能
在播放/錄制音頻的時候,可能需要用到Flash,quicktime或者java,這也是html 5的功能之一。
6.canvas對象
canvas這個對象可以定義圖形,比如圖表和其他圖像,可給瀏覽器增加能直接在其上繪制矢量圖的能力,這也就意味著可以脫離flash和silverlight,直接在瀏覽器上顯示圖形或動畫。
7.支持豐富的的2D圖片
html 5內嵌了所有復雜的二維圖片類型,比目前網站加載圖片的方式的速度快的多。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。