写点什么

专访《HTML5 移动 Web 开发实战》作者石川:开发者如何承受前端开发之重

  • 2013-08-21
  • 本文字数:2074 字

    阅读完需:约 7 分钟

引言:现在的用户对于前端越来越倚重,人们越来越多地用网络分享信息量大、功能性强的应用。因此,对于开发者来说,前端的责任越来越重大,开发者面临的困难也越来越大。甚至原来一些在服务器端的工作也被迁移到前端来完成。近日,InfoQ 的编辑专访了在前端开发具有丰富经验的石川,在这篇文章中,他给广大的前端开发者一些建议和经验分享。

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

石川:我觉得最大的推动力还是用户的浏览器使用趋势。现在人们用网络分享大量的信息,分享 PPT,设计文件,阅读电子书,看视频,阅览高清图片,存储办公文件等,这些都是信息量大、功能性强的作业,所以自然会不断增加前端功能的复杂性。

InfoQ:由于被赋予了更多权限,前端的责任也更重大了。现在,只会玩几个框架则已经无法满足新的业务需求了。您建议现在的前端工程师在哪些方面去进行积累?包括语言、工具、框架、思维方式等方向,都请您谈谈。

石川:第一语言。多研究传统语言,例如 C++,肯定会有助于你获得灵感,特别是现在前端的开发取代部分以前桌面语言开发的功能。就 HTML5 来说,最好订阅 W3C working group 的群发邮件,这样可以吃透语言的特性,增强交流。

就我个人而言,我有每天读完一本书的习惯。科技方面的书没有那么频繁的出版,所以每周读一本科技的书也是对语言系统学习的好帮助。

第二工具。每天的生活是用秒计算的。工具上来讲,应该尽量利用插件,其带来的好处节省重复性的工作是非常重要的。并且,尽量每天花 5 分钟了解下:所用工具是否推出了什么更新版本;第三方推出了什么所用工具的插件;有什么同类工具,对比是否有什么好处;积少成多,慢慢地这样大大增加了开发效率。

第三框架。在 github 上订阅一些常用框架的信息,了解最新的框架改动。国外优秀的开发者都是挂在 IRC 上的,跟着他们一起编写框架,这样可以学到很多东西。如果在工作中,使用框架,发现自己有更好的解决方案,就及时提交 pull request。

第四思维方式。就思维方式而言,真的是要对产品由衷的热爱。其实我觉得如果条件允许,最好拿一些初级的网站进行练手,包括从文案、设计、开发都系统地做一下。这样做更容易发现问题。

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

石川:Sublime 应该算是一个比较通用的编译器,如果是编辑一个浏览和网站的话,这个工具本身功能已经足够好。再加上对插件的支持和强大的第三方插件开发,基本解决了能想到的重复型工作。

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

石川:这个问题我们可以从两方面看:

一方面,从国内行业横向对比的角度来看。平心而论,能够真的花心思从头到尾独立研发的精神真的很稀缺。比如很多实业,都是一个“壳儿”,技术都是国外的,在销售、渠道、终端为王的时代,很少有人愿意从头到尾仔细做一件事了,所以国内互联网企业的工程师愿意花时间开发一套框架、工具这种精神,在大环境下,还是很可贵的,值得尊敬。

另一方面,纵向来看国内外的互联网行业。问题关键点可能主要在于开源本身是一个“众创”项目,而中国的开源项目没有和国外的工程师互动,这里面有语言、文化和习惯的问题。所以我觉得国内的公司推出一些独立研发的框架不是问题,问题是 1. 尽量用一个独特的切入点,在工作中的某些问题积累出的一套解决方法开发出框架;2. 怎么更高调的在国际开发者圈宣传出去,让国外开发者也了解并加入进来。

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

石川:无论长短期,都要根据产品来看,要是通过产品或后台数据分析,得出结果是来自移动端的客户占有很大比重,条件允许的情况下,最好给移动端一套不同的 CSS 和 JS。这个用现有技术已经可以很容易从前端或后端检测用户使用的操作系统,如果发现用户使用的是手机浏览器,加载一套不同的 JS 和 CSS,这样不仅是考虑速度,更是根据用户体验的不同来处理这个问题。

嘉宾介绍:

石川,一个出色的前端开发框架 HTML5 Boilerplate 项目的核心成员,个人著作《HTML5 移动 Web 开发实战》。现在是北京喜感信息咨询有限公司的运营经理。曾经在 2012 年接受过 InfoQ 的采访,见《专访 HTML5 Boilerplate 项目核心成员——石川

2013-08-21 17:534378

评论

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

Wireshark数据包分析学习笔记Day1

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

无线网络的用户隔离功能

dubbo 源码 v2.7 分析:通信过程及序列化协议

程序员架构进阶

架构 RPC 七日更 dubbo源码 3月日更

MySQL数据库的安装与使用

若尘

MySQL 数据库

区块链电子合同--电子合同区块链签约平台

13530558032

9.hooks源码(想知道Function Component是怎样保存状态的嘛)

全栈潇晨

源码分析 React React Hooks

windows 搭建ftp服务

xiezhr

vsftpd ftp ftp服务 文件服务 3月日更

2021程序员春招必备:Java面试知识点+答案(7大分类 5000字解析)

比伯

Java 编程 架构 面试 程序人生

一桶食用油的数字化

吴俊宇

数字化转型 鲁花

12.手写迷你react(短小精悍就是我)

全栈潇晨

源码分析 React React Hooks

项目汇报会复盘

Geek_XOXO

2021抖音面经分享:Java进阶核心知识集/算法刷题宝典(金三银四必备)

比伯

Java 编程 架构 面试 程序人生

11.react concurrent mode(并发模式是什么样的)

全栈潇晨

React React Hooks

三十而已

ES_her0

28天写作 3月日更

git 教程 --git cherry-pick 命令

生之欢愉,时间同行

git 程序员 git cherry-pick

10.scheduler&lane模型(来看看react是暂停、继续和插队的)

全栈潇晨

源码分析 React React Hooks

通俗易懂!看了不会忘的网络面试知识点

编程 架构 面试

迎战大厂!“金三银四”和春招通过率达95%的Java面试要点集锦

Java 程序员 架构 面试

【回溯算法】经典题:求目标和的组合方案 ...

宫水三叶的刷题日记

面试 LeetCode 数据结构与算法

Docker的三言两语-基础篇

一个大红包

Docker 28天写作 3月日更

Mysql安装

Sakura

科技强国梦的百度式注脚:扎根土壤、拥抱变局、眺望星空

脑极体

工作三年,小胖问我:什么是生产者消费者模式?菜到抠脚!

一个优秀的废人

Java 多线程 阻塞队列 生产者与消费者

区块链产业革命:解决融资租赁之谜

CECBC

区块链

Kubelet从入门到放弃系列:GPU加持

DCOS

AI gpu Kubernetes 云原生

一场关于代码注释的争执,引发的三点思考

架构精进之路

编码 经验分享 七日更 3月日更

(28DW-S8-Day13) 在线教育班型和角色

mtfelix

28天写作

程序员成长第十九篇:要不要转管理岗?

石云升

程序员 28天写作 职场经验 管理经验 3月日更

Elasticsearch Index Management 索引管理

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

白话Go内存模型&Happen-Before

Gopher指北

Go 语言

科学的互联网思想 指引我国网络强国建设稳步前行

CECBC

网络安全

专访《HTML5移动Web开发实战》作者石川:开发者如何承受前端开发之重_HTML5_涂兰敬_InfoQ精选文章