写点什么

云适配陈本峰谈前端:移动端浏览器很快就会赶上 PC 浏览器

2013 年 8 月 27 日

最近几年,社区中有关前端的讨论越来越多,尤其是 HTML5 和 JavaScript,在技术成熟度和影响力方面有着极大的发展。对于日益重要的前端工作,很多开发者也有很多不同的看法。近日,InfoQ 将一些开发者们谈到的问题收集起来,向一些业内专家了解他们对这些问题的看法。

今天,我们邀请到了云适配创始人兼 CEO 陈本峰来分享他的观点。

嘉宾简介:陈本峰,云适配创始人兼 CEO,W3C 中国区 HTML5 布道官,原微软核心工程师。

InfoQ:我们看到,这几年有一个趋势,就是大量原本在服务器端的工作——尤其是展现层的工作——被转移到了前端,由浏览器来处理了。HTML5 不仅是 HTML 语言 +CSS+JS,还包括了离线存储、应用缓存、文件系统等大量原本操作系统才能享受到的资源。对于这样一个趋势,您是怎样看的?您觉得这个趋势背后的推动力是什么?

陈本峰:我同意你的说法,把越来越多的业务逻辑转移到前端已经成为一种趋势。我觉得原因主要有以下几点:第一是浏览器的性能越来越好了,今天的 Javascript 引擎的性能相对以前有百倍以上提升,而且各大浏览器厂商在搞速度竞赛,极大程度推动了 Javascript 引擎技术发展;第二个是 HTML5 赋予了前端越来越来强的能力,使得前端的表现能力越来越强;第三是越来越多的 Javascript 框架涌现出来,比如 jQuery、Backbone、 AngularJS 等等, 使开发效率大幅度提升;第四是越来越多的开发人员投入到前端技术领域中。早期的时候开发者并不太看好 javascript ,但是现在大家逐渐发现 Javascript 了的诸多优点,加上 Node.js 的出现使得 JS 进入了后端领域,业界对 Javascript 的关注度大幅提升。GitHub 上最热门的一些开源项目大部分都和前端有关,证明了前端技术的光明前景。

InfoQ:由于前端被赋予了更多权限,前端的责任也变重了,只会玩几个框架是无法满足新的业务需求的。您建议现在的前端在哪些方面去进行积累?无论是语言、工具、框架、思维方式,还是其他任何方向,都可以谈谈。

陈本峰:前端的业务开发框架虽然有不少,但是都还比较新,比如 backbone.js 、Ember.js 、Angular.js 等。业内也还未形成成熟的开发模式,能把这些新兴的框架玩好其实挺不容易的,而且他们还在不停演变中,所以我建议先深入学好这些框架,并且关注他们的设计思维以及发展方向。

InfoQ:对于 Java 开发者,可能 Eclipse 是一个常规的开发工具;对于 Ruby 开发者,可能 RoR 是首先会考虑到的一个框架。使用常规工具和框架虽然不一定在任何场景下都最优,但有很多的好处。对于前端而言,目前 jQuery、Bootstrap 算是业界非常通用了,不知道开发工具这方面现在主要用什么?

陈本峰:就开发工具而言,前端只是只需要一个轻量级的编辑器就够了, Sublime Text 是近些年国外比较流行的开发工具。最近国内数字天堂公司发布了一款新的前端开发工具叫 HBuilder ,据说也不错。开发框架的话,jQuery 已经算是标配了,Boostrap 也逐渐成为界面的标配,Express.js 是后端 Node.js 的主流框架。

InfoQ:接上一个问题,现在国内的几个大互联网公司有一个情况,就是他们不用通用的 jQuery、Bootstrap 这样的工具,而是非要自己搞一套出来,这几家公司内部的工程师对此也有不少抱怨。你对于这样一个情况的看法是什么?

陈本峰:我觉得 jQuery 在国内应用挺普遍的。自己搞一套可能是有历史兼容原因,或者是有独特的业务需求,我还是比较理解的。

InfoQ:越来越重的前端在带来了好处的同时,也有另一个问题:移动端的浏览器还没有 PC 浏览器那么给力,前端写的重了,在手机上很难用起来。对于这一个问题,你建议怎样的短期处理方案和长期处理方案?

陈本峰:前端开发中有一个重要的思维叫 progressive enhancement,也就是说,你可以分成几个不同版本,针对不同的浏览器的能力推送不同版本。当然这么做的成本很高。其实手机硬件发展的速度飞快,现在浏览器的竞争也是白热化的,所以我相信移动浏览器的能力很快就会赶上 PC 浏览器,所以 HTML5 在移动端的未来前景无限。

云适配是非常专注在移动端的 HTML5 技术的,我们把企业网站在移动端转换成 HTML5 版本,而且也会根据浏览器的能力做调整,让企业可以非常简单快捷,省时省力地进入移动互联网。

之前,InfoQ 也邀请了《HTML5 移动 Web 开发实战》作者石川谈论过类似的话题。

2013 年 8 月 27 日 00:501271

评论

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

LeetCode 2. Add Two Numbers

liu_liu

数据结构 算法 链表 LeetCode

面试急转弯:List如何一边遍历,一边删除?

Java小咖秀

接口隔离原则-Cache类优化

yupi

本地缓存高性能之王Caffeine

java金融

Java Guava Cache Caffeine 本地缓存 谷歌本地缓存

架构师训练营第三周总结

hiqian

跨平台数据库管理神器DataGrip,用上就爱不释手

飞哥

数据库 JetBrains datagrip

架构师训练营第三周作业

张明森

极客大学架构师训练营

了解 Java 架构

陈皮

了解 Java 内存模型

陈皮

JMM

通证经济=区块链技术+商业模式

CECBC区块链专委会

商业模式 区块链技术 Token 通证经济

云计算产品的竞争力

韩超

云计算 k8s 公有云 私有云

迎接一次重大的人生升级,让优秀的你,成为大学顶尖生。

叶小鍵

单例模式与组合模式总结与练习

单例模式 极客大学架构师训练营 组合模式 第三章作业

springboot + rabbitmq 做智能家居,我也没想到会这么简单

程序员内点事

Java Spring Boot RabbitMQ 智能设备

LeetCode | 4. Palindrome Number 回文数

Puran

Python C# 算法 LeetCode

LeetCode | 5. Longest Common Prefix 最长公共前缀

Puran

Python C# 算法 LeetCode

刘华:想入门软件系统架构设计,看这篇就够了

刘华Kenneth

架构 架构师 故障 容灾 灾备

一些有用的工具、开源项目收集

陈皮

区块链助力新基建

CECBC区块链专委会

区块链技术 联盟链 公链 底层技术

架构师训练营总结-20200621

caibird1984

极客大学架构师训练营

设计模式作业

qihuajun

ARTS Week4

时之虫

ARTS 打卡计划

week3:组合设计模式和单例

Geek_36d3e5

Week3 作业

Shawn

依赖倒置原则

任小龙

ARTS|Week 4 Product, Leadership, and SOLID

Puran

设计模式 LeetCode ARTS活动 Leadership

孩子教育

王进行

教育 孩子

week3-学习心得

Geek_36d3e5

LeetCode 300. Longest Increasing Subsequence

liu_liu

LeetCode

ArrayList的删除姿势你都知道了吗

java金融

Java 后端 ArrayList 循环删除 ModificationException

从印度兵力分布聊聊Mybatis中#和$的区别

程序那些事

Java sql mybatis 印度兵力

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

云适配陈本峰谈前端:移动端浏览器很快就会赶上PC浏览器-InfoQ