速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

淘宝 UED 技术负责人小马畅谈 Web 前端开发

  • 2010-11-25
  • 本文字数:2490 字

    阅读完需:约 8 分钟

小马(赵泽欣)是淘宝 UED 团队的技术负责人,在 Web 开发领域有丰富的经验。InfoQ 编辑在 QCon 全球企业开发大会(北京站)期间,就 Web 框架选取标准、性能优化建议、前端工程师角色定位等相关问题对他作了专访。

InfoQ:小马,请首先做一下自我介绍。

小马:大家好,我叫赵泽欣,在淘宝的花名是小马,隶属于淘宝 UED 部门,很荣幸能够接受 InfoQ 的采访,谢谢。

InfoQ:小马,现在 Web 开发相关的类库特别多,请问淘宝在选择 Web 框架做开发的时候,是从哪些角度来考虑的?能否给读者朋友提供一些参考?

小马:的确如你所说,Web 类库五花八门。我们在做选择的时候,主要基于以下这两个方面:

  1. 想想是否真正符合自己的需求,有些类库可能适合网站型应用,另一些可能适合数据型应用,所以其实还是有些区别的,这是第一点。
  2. 我觉得还要看人才或者是技术储备的状况。如果你的团队里面没有几个特别熟悉这种类库的人才,有时候会吃一些苦头。

像淘宝网当初选择 YUI 也是基于这两个因素考虑。因为淘宝的后端架构是基于 JAVA 的,而 YUI 是大多数框架里面,在文档组织、代码组织上最接近于 JAVA 的,比较容易得到开发人员的认可,然后功能也比较强大,组件比较丰富,再加上又有一个专业的雅虎团队在维护,所以可靠性上也会比较强,因此当时选择它。最重要的还是根据你自己的需求。

InfoQ:目前淘宝 UED 团队已经发展壮大,你们现在是基于 YUI 呢,还是有进一步的计划?

小马:目前大部分还是基于 YUI,因为已经用了很久了,也基于它做了很多改进和扩展。但是随着淘宝飞速的发展,各种应用也越来越复杂,我们也慢慢感受到 YUI 的一些不足,YUI 当然它自己也在发展,推出 YUI 3 的版本,也做了很多的改进。可是我们在用的过程中,觉得还是不太适合,不太适用于淘宝,所以我们也有计划的在研发自己的框架,我们的框架叫做 Kissy ,我的同事玉伯主持这个项目,我们把它开源了,我们希望国内外更多的朋友能够一起来丰富这个框架。

InfoQ:我们知道前端很注重用户体验,比如响应时间等,现在有关 Web 性能优化的规范特别特多,我想问一下,以你的经验来说,有哪一些建议比较重要?

小马:当初我们做性能优化,最主要还是基于雅虎的 YSlow 工具,他们专门有一个性能团队,做了很多的研究,列出了很多优化的原则,我们刚开始还是拿来主义,学习他们,所以有几条我觉得特别能够立竿见影的方法。第一是把很多的脚本文件合并成一个文件,或者是把很多的 CSS 文件合并成一个文件,这样能够有效的减少 HTTP 的请求。然后尽可能把脚本放在页面靠结束的部分,把 CSS 尽可能放在靠前的部分。以我的经验,这些措施能够很快让用户感受到速度的一个提升。如果要做更多的优化的话,那可以按照 YSlow 的规则去做,其实性能优化不光是前端的职责,有时候也需要后端的支持,比如说 Cache,有时候是需要 Apache 或者 http server 的一些配置,其实性能需要整个公司里面各个团队一起来配合。

InfoQ:前端团队除了注重性能之外,是否还有其他领域,比如安全性,淘宝是不是也很注重这方面的问题?

小马:我个人觉得其实安全性也是一个我们很关注的地方,因为现在很多安全性问题,可能都是以脚本作为跳板,很多也是基于浏览器来做一些攻击。前端最熟悉浏览器,也是对脚本最为熟悉的一个岗位,所以很多时候,跟公司的安全技术部门交流的过程中,我们都希望从前端的角度给他们更多的建议。除了安全,我个人觉得,淘宝现在比较关注一些手持设备上面的前端研发,比如 iPhone、iPad 等。

InfoQ:淘宝 UED 团队目前关注哪些最新的 Web 前端技术?

小马:现在可能最热门的就是 HTML 5 和 CSS 3,但是很遗憾 IE6、IE7 这些浏览器还占据大量的市场份额,像淘宝基本上 90% 的用户浏览器都还是 IE 系列。我们以前经常会有这种想法“反正用户都用 IE,这些新的东西用了也没什么意义”,现在我们慢慢的觉得,还是要推动这个事情,所以 HTML 5、CSS 3 的一些新特性,我们都尽可能的去应用,而且我觉得效果非常的好。

InfoQ:您作为淘宝前端团队的负责人,如何定位前端工程师这样一个角色?他的工作范围跟其他的工程师,比如后台开发工程师、还有一些专门做页面设计的工程师,有何区分?

小马:这个问题我们自己内部也有讨论过,我想了很久,提出一个定位,当然也是这个团队大家一起的思考成果,我们觉得前端是面向用户的程序,首先还是程序,我们也要编码,我们也要具备严谨好学的特质,另外一点,我们跟很其他后端开发工程师有一些区别,就是可能我们更贴近用户,我个人觉得可能后端工程师更靠近机器,我们更靠近用户,所以我们需要更多的倾听用户的声音,所以我觉得前端工程师是面向用户的程序员。

InfoQ:目前云计算的实践越来越多,您觉得云计算会给前端工程师或者前端开发带来什么样的影响或者变化?

小马:现在很多人在谈这个概念,包括淘宝的测试团队,他们已经推出云测试工程师,所以我觉得前端工程师以后可能会慢慢的转化为云端工程师,因为在我的感觉里面,云其实就是一个大的存储的中心,一个计算服务中心,他能够提供计算的能力,能够提供存储,能够提供这些 SERVICE。那浏览器呢,又是一个比较重要的连接云端的工具,不管是浏览器还是基于浏览器的 OS,我觉得前端工程师具备很多技能,可以比较容易的转换到云端工程师,我自己是觉得这是一个很好的发展前景。

InfoQ:最后一个问题,我们 InfoQ 的读者,当中有很多一部分,可能是从事这种前端的开发,或者说以后有志于从事前端开发的,那么我想替他们问一个问题,因为您是淘宝的第一位前端工程师,可以说是经验非常丰富,您认为一个优秀的前端工程师,他应该具备哪些的素质,或者您在招聘一个员工的时候,会看中他哪些特质?

小马:那我直接说招聘好了,我一般会比较注重他的从不同角度去思考问题的能力。因为前端就是这样,很多时候处理一个问题,其实有多套的方案,关键是怎么去权衡,找到最合适于这个需求的一个方案,所以我特别看中他们会有这种从不同角度去看问题的这样一个能力;然后第二点,因为前端确实是一个新的岗位,很多新的东西,我还是比较看重他的学习能力;另外还有一点就是他真的是热爱前端的这样的一个岗位。

InfoQ:感谢小马接受采访。

小马:谢谢。

2010-11-25 00:007414
用户头像

发布了 501 篇内容, 共 257.3 次阅读, 收获喜欢 61 次。

关注

评论

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

初识ClickHouse——安装与入门

Simon

Clickhouse

从CPU到XPU进化,英特尔对业界放了什么大招?

E科讯

百度面试被算法血虐,闭关29天肝完445页算法神仙笔记成功入职字节跳动!

Java架构之路

Java 程序员 架构 面试 编程语言

训练营第十三周作业

大脸猫

架构师第八周总结

Geek_xq

Soul 网关源码阅读(三)请求处理概览

Java 源码阅读 网关

Java 程序经验小结:剖析@SuppressWarinings注解

后台技术汇

28天写作

Nginx 的负载均衡模式有哪些?它的实现原理是什么?

码农架构

nginx 架构 微服务

架构师第8周作业

Geek_xq

矿机挖矿软件系统开发|矿机挖矿APP开发

系统开发

2021字节、华为、滴滴Java内部面试题(含答案),新鲜出炉!

比伯

Java 编程 架构 面试 程序人生

特斯拉自建ERP的背后

明道云

物流快递公司APP架构设计

jorden wang

极客训练营知识点思维导图

jorden wang

2021年,字节/百度/阿里相继发布50W+优质Java岗(含内部面试真题及答案)

996小迁

Java 程序员 架构 面试

面试阿里Java岗,技术总监真正关心的核心能力是什么?

Java架构追梦

Java 编程 架构

Soul 网关源码阅读(二)代码初步运行

Java 源码阅读 网关

PHP转JAVA开发30分钟实战攻略

dothetrick

Java php

智能量化对冲搬砖套利交易软件APP系统开发

系统开发

二本学渣考研失败,为什么Android要采用Binder作为IPC机制?已开源

欢喜学安卓

android 程序员 面试 移动开发

技术人员如何写好周报

猿话

iOS性能优化 — 五、App启动优化

iOSer

ios 性能优化 性能分析

Soul 网关源码阅读(一) 概览

Java 源码阅读 网关

架构师训练营第十三周笔记

李日盛

笔记

从姚安娜出道说起

三只猫

28天写作 社交泛娱乐

安卓开发实战!闭关在家37天“吃透”这份345页PDF,成功定级腾讯T3-2

欢喜学安卓

android 程序员 面试 移动开发

在数据分析、挖掘方面,有哪些ETL工具值得推荐?

敏捷调度TASKCTL

大数据 kettle 海豚调度 批量任务 ETL

Soul 网关源码阅读(四)Dubbo请求概览

Java 源码阅读 网关

解读容器的 2020:寻找云原生的下一站

阿里巴巴云原生

Docker 云计算 Serverless 容器 云原生

GitHub标星150K的神仙笔记,3个月肝完成功面进美团定级3-2

Java架构之路

Java 程序员 架构 面试 编程语言

华云大咖说|企业混合云构建之道

华云数据

云计算 桌面云

淘宝UED技术负责人小马畅谈Web前端开发_Java_崔康_InfoQ精选文章