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、获取:localStorage.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小时内与您取得联系。