SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
前端架构实践与思考
QQ.com front-end infrastructure practice
     tomiezhang@tencent.com
          http://daimaren.cn
张耀辉
tomie/大王
2006.智联招聘
2007.腾讯网
我来自这里...
前端架构?
•架构,把握问题的关键,平衡设计。
•前端架构就像一个舞台,舞台布置好
    了,男女老少都可以在上面表演。
从自己的产品出发
and more...
产品页面B

 专题页面1                     产品页面A



首页改版2                       首页改版1


                            产品页面C
xx页面调整


                         专题页面2
         .....
•庞大的综合型门户!
•项目周期短,连贯性差!
•面对各种类型的页面!
•门户站点特有的裹脚布!
•需要大量的“码农”
•重复而意义不大的工作
•个人成就感的直线下落
•陷入代码维护的泥潭
•创新、成长沦为空谈
肿么办?!
FEDS
Font-end Document System
代码规范

       文档体系库   脚本规范

               移动设备规范

                ....
FEDS
                Hound

       辅助工具     koala

                ....
HTML/css 设计
<div class=”layout”>
  <div class=”chief”></div><!--主要-->
</div>



                     单列结构
<div class=”layout”>
  <div class=”chief”></div><!--主要-->
  <div class=”extra”></div><!--扩展-->
</div>



                      2列结构
<div class=”layout”>
  <div class=”chief”>
     <div class=”main”></div>
     <div class=”sub”></div>
  </div>
  <div class=”extra”></div><!--扩展-->
</div>



                     3列结构
<div class=”mod” id=””>
  <div class=”hd”></div>
  <div class=”bd”></div>
  <div class=”ft”></div>
</div>



                      基本模块
标准头图   公共导航   头条   文字列表


标准页卡   公共页尾   段落   图片列表


       公共广告        视频列表


       微博组件        图文混排


       评论组件        排行榜列表
base.css

 @media screen and (max-device-width:320px){
   body{-webkit-text-size-adjust:none}
 }
 @media screen and (max-device-width:480px){
   body{-webkit-text-size-adjust:none}
 }
 @media only screen and (max-device-pixel-ratio:2){
   body{-webkit-text-size-adjust:none}
 }
 @media only screen and (max-device-width:768px) and (max-device-width:1024px){
   body{-webkit-text-size-adjust:none}
 }
base.css


.layout{width:960px;margin:0 auto;}
.Q-g12 .chief,.Q-g12 .extra{width:475px}
.Q-g14 .chief {width:570px}
.Q-g16 .chief{width:640px}
.Q-g16 .main{width:380px}
.Q-g16 .sub{width:250px}
.Q-g17a .chief,.Q-g17b .chief{width:700px}
.....
Javascript
•轻量的工具集
•适合门户网站特质的
•容易扩展的
•模块化可组合的
•易操作的
core             dom            event        css


array          prtotype         extend       ...



       focus            tab         scroll



                       loader
<script src=”focus.js”></script>
<script>
 var fos = new focus();
 fos.time = 5;
 fos.txtColor = “#ff0000”;
 fos.init();
</script>




          从零散嵌入向集约管理转变

Qfast([‘koala’,‘focus’],function(){
   var fos = new focus();
   fos.set({time:5,txtColor:”#ff0000”}).init();
})
hound(猎犬)
koala(考拉)
流程优化与团队建设
产品/编辑   设计   前端
产品/编辑          TAPD




设计
                   TAPD


                                 前端
           TAPD
                          TAPD

cms后台工程师


                  测试工程师
•引入公司通用的tapd需求管理系统
•引入公司通用的bugtrace系统
•引入公司通用的性能监测系统(首屏概念、实时流
量监控)

•引入公司通用的code平台(svn/codereview)
•非产品级页面走快速流程
•产品级页面必须走标准流程(需求、测试、灰度)
专题页面1

专题页面2

专题页面3


        跨平台

        前端研究
产品A
        技术平台
产品B

产品C
思考
•体系仍旧不是很强壮(检查、自动化)
•最终目的是人的解放(工作、时间、创新)
•在有限的条件下做到最大化,并坚持使之制度化
•相信团队的智慧
•没有最好的架构,只有最合适的(动态调整)
Q&A?

Mais conteúdo relacionado

Mais procurados

Alice库构建
Alice库构建Alice库构建
Alice库构建Sofish Lin
 
網頁設計 - Bootstrap前端框架
網頁設計 - Bootstrap前端框架網頁設計 - Bootstrap前端框架
網頁設計 - Bootstrap前端框架Vincent Chi
 
2011彩票首页开发实践
2011彩票首页开发实践2011彩票首页开发实践
2011彩票首页开发实践jay li
 
前端性能优化&测试
前端性能优化&测试前端性能优化&测试
前端性能优化&测试tbmallf2e
 
编辑器设计2
编辑器设计2编辑器设计2
编辑器设计2yiming he
 
高雄前端社群 #4 psdtohtml workshop
高雄前端社群 #4 psdtohtml workshop高雄前端社群 #4 psdtohtml workshop
高雄前端社群 #4 psdtohtml workshop洧杰 廖
 
支付宝CSS构架
支付宝CSS构架支付宝CSS构架
支付宝CSS构架Sofish Lin
 
960 grid system simple howto
960 grid system simple howto960 grid system simple howto
960 grid system simple howtoHina Chen
 
台科大暑期資工營 - 前端入門
台科大暑期資工營 - 前端入門台科大暑期資工營 - 前端入門
台科大暑期資工營 - 前端入門Yi-Feng Xie
 
无名小站首页改版 -渐进增强与css3
无名小站首页改版 -渐进增强与css3无名小站首页改版 -渐进增强与css3
无名小站首页改版 -渐进增强与css3taobao.com
 
第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践taobao.com
 
Modern Web with CSS and CSS Grid (image with links inside)
Modern Web with CSS and CSS Grid (image with links inside)Modern Web with CSS and CSS Grid (image with links inside)
Modern Web with CSS and CSS Grid (image with links inside)百範 陳
 
Show Me The Page - 介紹 Critical rendering path
Show Me The Page - 介紹 Critical rendering pathShow Me The Page - 介紹 Critical rendering path
Show Me The Page - 介紹 Critical rendering pathYvonne Yu
 
Koubei banquet 34
Koubei banquet 34Koubei banquet 34
Koubei banquet 34Koubei UED
 
Scrum in inexperienced team
Scrum in inexperienced teamScrum in inexperienced team
Scrum in inexperienced teamAbel Shen
 
Style基础优化之独角兽篇
Style基础优化之独角兽篇Style基础优化之独角兽篇
Style基础优化之独角兽篇fangdeng
 
使用kslite支持第三方内容开发
使用kslite支持第三方内容开发使用kslite支持第三方内容开发
使用kslite支持第三方内容开发leneli
 
网页设计及制作(Div+css)
网页设计及制作(Div+css)网页设计及制作(Div+css)
网页设计及制作(Div+css)lrk3
 
Bootstrap 4 超詳盡解析
Bootstrap 4 超詳盡解析Bootstrap 4 超詳盡解析
Bootstrap 4 超詳盡解析Chih-cheng Wang
 

Mais procurados (20)

Alice库构建
Alice库构建Alice库构建
Alice库构建
 
網頁設計 - Bootstrap前端框架
網頁設計 - Bootstrap前端框架網頁設計 - Bootstrap前端框架
網頁設計 - Bootstrap前端框架
 
SASS入門實作
SASS入門實作SASS入門實作
SASS入門實作
 
2011彩票首页开发实践
2011彩票首页开发实践2011彩票首页开发实践
2011彩票首页开发实践
 
前端性能优化&测试
前端性能优化&测试前端性能优化&测试
前端性能优化&测试
 
编辑器设计2
编辑器设计2编辑器设计2
编辑器设计2
 
高雄前端社群 #4 psdtohtml workshop
高雄前端社群 #4 psdtohtml workshop高雄前端社群 #4 psdtohtml workshop
高雄前端社群 #4 psdtohtml workshop
 
支付宝CSS构架
支付宝CSS构架支付宝CSS构架
支付宝CSS构架
 
960 grid system simple howto
960 grid system simple howto960 grid system simple howto
960 grid system simple howto
 
台科大暑期資工營 - 前端入門
台科大暑期資工營 - 前端入門台科大暑期資工營 - 前端入門
台科大暑期資工營 - 前端入門
 
无名小站首页改版 -渐进增强与css3
无名小站首页改版 -渐进增强与css3无名小站首页改版 -渐进增强与css3
无名小站首页改版 -渐进增强与css3
 
第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践
 
Modern Web with CSS and CSS Grid (image with links inside)
Modern Web with CSS and CSS Grid (image with links inside)Modern Web with CSS and CSS Grid (image with links inside)
Modern Web with CSS and CSS Grid (image with links inside)
 
Show Me The Page - 介紹 Critical rendering path
Show Me The Page - 介紹 Critical rendering pathShow Me The Page - 介紹 Critical rendering path
Show Me The Page - 介紹 Critical rendering path
 
Koubei banquet 34
Koubei banquet 34Koubei banquet 34
Koubei banquet 34
 
Scrum in inexperienced team
Scrum in inexperienced teamScrum in inexperienced team
Scrum in inexperienced team
 
Style基础优化之独角兽篇
Style基础优化之独角兽篇Style基础优化之独角兽篇
Style基础优化之独角兽篇
 
使用kslite支持第三方内容开发
使用kslite支持第三方内容开发使用kslite支持第三方内容开发
使用kslite支持第三方内容开发
 
网页设计及制作(Div+css)
网页设计及制作(Div+css)网页设计及制作(Div+css)
网页设计及制作(Div+css)
 
Bootstrap 4 超詳盡解析
Bootstrap 4 超詳盡解析Bootstrap 4 超詳盡解析
Bootstrap 4 超詳盡解析
 

Semelhante a Qq.com前端架构实践与思考

Responsive Web UI Design
Responsive Web UI DesignResponsive Web UI Design
Responsive Web UI Designjay li
 
淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践Du Yamin
 
淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践jay li
 
Html5和css3入门
Html5和css3入门Html5和css3入门
Html5和css3入门Xiujun Ma
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editortaobao.com
 
浅析浏览器解析和渲染
浅析浏览器解析和渲染浅析浏览器解析和渲染
浅析浏览器解析和渲染Ailsa126
 
美团前端架构简介
美团前端架构简介美团前端架构简介
美团前端架构简介pan weizeng
 
模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京Joseph Chiang
 
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練32016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3Duran Hsieh
 
前端样式开发演变之路
前端样式开发演变之路前端样式开发演变之路
前端样式开发演变之路Zhao Lei
 
Html&css培训 舒克
Html&css培训 舒克Html&css培训 舒克
Html&css培训 舒克jay li
 
Exam 98-375 HTML5 Application Development Fundamentals
Exam 98-375 HTML5 Application Development FundamentalsExam 98-375 HTML5 Application Development Fundamentals
Exam 98-375 HTML5 Application Development FundamentalsChieh Lin
 
Css schema by_sofish
Css schema by_sofishCss schema by_sofish
Css schema by_sofishWebrebuild
 
深入剖析浏览器
深入剖析浏览器深入剖析浏览器
深入剖析浏览器jay li
 
淘宝移动端Web开发实践
淘宝移动端Web开发实践淘宝移动端Web开发实践
淘宝移动端Web开发实践完颜 小卓
 
20120516 axure rp prototype design outline
20120516 axure rp prototype design outline20120516 axure rp prototype design outline
20120516 axure rp prototype design outlineturtleknight
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平drewz lin
 
淘宝网前端应用与发展
淘宝网前端应用与发展淘宝网前端应用与发展
淘宝网前端应用与发展taobao.com
 
一淘新首页总结
一淘新首页总结一淘新首页总结
一淘新首页总结jieorlin
 
使用Big pipe提升浏览速度v2
使用Big pipe提升浏览速度v2使用Big pipe提升浏览速度v2
使用Big pipe提升浏览速度v2kumawu
 

Semelhante a Qq.com前端架构实践与思考 (20)

Responsive Web UI Design
Responsive Web UI DesignResponsive Web UI Design
Responsive Web UI Design
 
淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践
 
淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践淘宝移动端Web开发最佳实践
淘宝移动端Web开发最佳实践
 
Html5和css3入门
Html5和css3入门Html5和css3入门
Html5和css3入门
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editor
 
浅析浏览器解析和渲染
浅析浏览器解析和渲染浅析浏览器解析和渲染
浅析浏览器解析和渲染
 
美团前端架构简介
美团前端架构简介美团前端架构简介
美团前端架构简介
 
模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京
 
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練32016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
 
前端样式开发演变之路
前端样式开发演变之路前端样式开发演变之路
前端样式开发演变之路
 
Html&css培训 舒克
Html&css培训 舒克Html&css培训 舒克
Html&css培训 舒克
 
Exam 98-375 HTML5 Application Development Fundamentals
Exam 98-375 HTML5 Application Development FundamentalsExam 98-375 HTML5 Application Development Fundamentals
Exam 98-375 HTML5 Application Development Fundamentals
 
Css schema by_sofish
Css schema by_sofishCss schema by_sofish
Css schema by_sofish
 
深入剖析浏览器
深入剖析浏览器深入剖析浏览器
深入剖析浏览器
 
淘宝移动端Web开发实践
淘宝移动端Web开发实践淘宝移动端Web开发实践
淘宝移动端Web开发实践
 
20120516 axure rp prototype design outline
20120516 axure rp prototype design outline20120516 axure rp prototype design outline
20120516 axure rp prototype design outline
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平
 
淘宝网前端应用与发展
淘宝网前端应用与发展淘宝网前端应用与发展
淘宝网前端应用与发展
 
一淘新首页总结
一淘新首页总结一淘新首页总结
一淘新首页总结
 
使用Big pipe提升浏览速度v2
使用Big pipe提升浏览速度v2使用Big pipe提升浏览速度v2
使用Big pipe提升浏览速度v2
 

Qq.com前端架构实践与思考