写点什么

评论:前端的 HTML5 时代来临

  • 2010-05-10
  • 本文字数:1574 字

    阅读完需:约 5 分钟

今年 MIX2010 大会上微软的工程师在介绍 IE9 时,从前端技术的角度把互联网的发展分为三个阶段:第一阶段是 Web 1.0 的以内容为主的网络,前端主流技术是 HTML 和 CSS,第二阶段是 Web 2.0 的 Ajax 应用,热门技术是 Javascript/DOM/ 异步数据请求,第三阶段是即将迎来的 HTML5 时代,亮点是富图形和富媒体内容(Graphically-Rich and Media-Rich)。我也认同今年前端技术将进入一个崭新的时代,至少已经开启了这扇门。

Web 2.0 时代把大量服务从桌面转移到网络上,B/S 架框的应用迅速流行起来,这个时期 Ajax 和 Javascript 框架得到广泛的应用。网站成为提供 Web 服务的主要形式,但随着智能手机和 3G 网络的普及,手机应用和手机上的 Web 应用将会成为新的产品形态。原有的互联网产品需要对各种形式的终端提供友好的展现形式。比如豆瓣电台 ( douban.fm ) 目前就有网页版、iPhone 版、Android 版、不久还会看到 HTML 5 版和桌面版。网络逐渐变成一个传输和存储数据的透明仓库,向不同形式的产品终端输送数据。而且这个数据内容将会非常丰富,这就是微软眼中的富图形和富媒体内容,所以,IE9 必须、也不得不支持 SVG 和 HTML5 的 Video 和 Audio。

苹果推出 iPad 无疑又是一场革命,在拥有更大的多点触摸屏幕的终端上跑智能手机系统,把硬件成本降到一个足够低的程度,我想 iPad 和类似的平板电脑将会流行起来。同时也意味着,产品前端又增加一种形态。

PC 上的 Web 应用受浏览器历史原因的束缚太大,在国内 IE6 等低端浏览器目前仍占据绝大多数的市场份额。因此这些不称职的平台需要靠第三方插件来弥补先天的不足,像 Flash/Flex、Silverlight、JavaFx 等,包括 Google Chrome,本质上都是为了弥补浏览器的缺陷,当浏览器足够强了也就不需要这些插件了。智能手机出现的比较晚,所以完全没有历史包袱。现在的智能手机系统 iPhone OS 和 Android 加起来就占了 90%以上的市场份额,默认的浏览器都是基于 Webkit 内核的 HTML 浏览器,对 HTML 5 和 CSS3 的支持比较好。这让 HTML5 和 CSS3 有了最佳实践的机会。产品形态向不同终端转变的成本因此大大降低了。这是 HTML5 技术升温的原因。

比如 iPhone 上的 Mobile Safari 浏览器支持 HTML5 的 Canvas/Canvas2D、Video、Audio、Geolocation、Local Storage/Session Storage、Application Cache、Web SQL Database 等,CSS3 的 3D/2D 动画、RGBA、圆角、阴影和渐变等主要功能都支持。用你的手机浏览器访问 http://html5test.com ,可以测试一下都具体支持哪些。利用这些特性加上传统的 Javascript/HTML/CSS 就可以打造一个很强悍的 Web 应用。Paul Graham 在 2005 年 Web2.0 时代来临时曾说“Javascript now works”,那现在可以说“HTML5 now works”了。HTML5 发挥作用同时,也意味着 HTML5&CSS3 将成为前端开发者的必修技能。

HTML5 和 Flash 之间的讨论前段时间很热。插件技术本身是在原生技术满足不了的情况下才会使用。在学习路线上,HTML/CSS/Javascript 到 HTML5/CSS3 将是前端开发者的必修课,插件技术永远是选修课。Flash CS5 将支持导出 HTML5 的 Canvas,可见 Adobe 毕竟是一家软件公司,它会想办法实现不同技术之间转换和包容,有人说也许几年后 Flash 会成为 Canvas 开发工具,我们只需坐享其成。像从 Flash 到 Flex 再到 AIR 的发展过程中可见一斑。做为前端开发者来说,一定要身兼多技,但务必要先学好必修课。很多公司会设置一些专一性技术的职位,比如 Flash 开发工程师,这会误导一些人只学 Flash,对日后的职业发展很不利。

套句老话“形势喜人,形势逼人”,前端技术越来越丰富,前端开发者的担子越重,越多东西要学。总之,玩起来吧!

作者介绍:张克军,前雅虎中国资深前端工程师,现豆瓣前端工程师,主要负责产品的前端架构和开发。热衷于前端领域的技术推广,是国内最活跃的前端布道者之一。个人网站: http://hikejun.com

2010-05-10 03:445644

评论

发布
暂无评论
发现更多内容

单元测试利器——手把手教你使用Mockito

京东科技开发者

单元测试 Mockito 京东云 安全测试 京东技术

活动回顾丨研发效能度量线下沙龙圆满举办

Kyligence

数据分析 Kyligence Zen

MySql基础-笔记5 -WHERE 、UPDATE、DELETE、LIKE、UNION使用

MySQL 数据库

MySql基础-笔记11-临时表、复制表、元数据、序列使用

MySQL 数据库

Unittest接口和UI自动化测试框架中的发送邮件服务如何使用?

Python 自动化测试 unittest 邮件服务

乌卡时代的云成本管理:从0到1了解FinOps

SEAL安全

云服务 FinOps 企业号 2 月 PK 榜

MySql基础-笔记6 -排序、分组、连接的使用、NULL值处理

MySQL 数据库

MASA MAUI Plugin (八)Android相册多选照片(Intent 方式)

MASA技术团队

.net blazor MAUI MASA Blazor

推荐系统[二]:召回算法超详细讲解[召回模型演化过程、召回模型主流常见算法(DeepMF_TDM_Airbnb Embedding_Item2vec等)、召回路径简介、多路召回融合]

汀丶人工智能

自然语言处理 深度学习 推荐系统 搜索算法 召回算法

项目终于用上了低代码,才知道为什么真香了!

引迈信息

项目管理 低代码

AI for Science系列(三):赛桨PaddleScience底层核心框架技术创新详解

飞桨PaddlePaddle

人工智能 paddle 飞桨 框架技术

Gluten 首次开源技术沙龙成功举办,更多新能力值得期待

Kyligence

开源技术 Gluten

MySql基础-笔记9 -ALTER命令

MySQL 数据库

微服务拆分治理最佳实践

京东科技开发者

数据库 微服务 京东云 京东技术 安全接口

直播预告 | 企业如何轻松完成数据治理?火山引擎DataLeap给你一份实战攻略!

字节跳动数据平台

数据库 大数据 数据治理 数据实践

MySql基础-笔记4 -数据表创建、删除和数据插入、查询等操作

MySQL 数据库 删除 创建

中科协发布2022“科创中国”开源创新榜 OceanBase开源社区入选

OceanBase 数据库

数据库 oceanbase

MySQL审计插件-MariaDB Audit Plugin

GreatSQL

:MySQL 数据库 maria greatsql greatsql社区

飞桨全量支持业内AI科学计算工具——DeepXDE!

飞桨PaddlePaddle

人工智能 深度学习 开源

使用 NGINX 在 Kubernetes 中对 TCP 和 UDP 流量进行负载均衡

NGINX开源社区

nginx Kuber udp tpc 企业号 2 月 PK 榜

10分钟学会使用 Loki 日志聚合系统

北京好雨科技有限公司

Kubernetes 云原生 rainbond 企业号 2 月 PK 榜

软件测试/测试开发 | App测试时常用的adb命令你都掌握了哪些呢?

测试人

android 软件测试 自动化测试 测试开发 adb

搜索EE场景排序链路升级

京东科技开发者

模型 搜索 EE 企业号 2 月 PK 榜 Explore & Exploit

本周 2 场直播预告!Intel 高级工程师带你探索开源机密计算社区 CCZoo | 第 65 期

OpenAnolis小助手

云计算 运维 直播 intel 龙蜥大讲堂

风险洞察之事件总线的探索与演进

京东科技开发者

京东云 事件总线 京东技术 数据管道 风险洞察

软件测试 | 霍格沃兹线下班开课啦!

测吧(北京)科技有限公司

测试

GhatGPT在信息安全方面的应用

HummerCloud

ChatGPT

AI for Science系列(二):基于AI框架的CFD工具组件!赛桨v1.0 Beta API介绍以及典型案例分享!

飞桨PaddlePaddle

深度学习 paddle API 飞桨

长安链入选“2022科创中国”开源创新榜

科技热闻

MySql基础-笔记10-索引

MySQL 数据库

评论:前端的HTML5时代来临_Java_张克军_InfoQ精选文章