标签 ‘前端开发’
-
YUI3设计中的激进和妥协
相信每个前端工程师都有自己喜爱的 javascript框架,说情感也好,道信仰也罢,javascript框架带给人的不仅仅是便捷的开发,更有一种纯粹的逻辑美感,不管是jquery 曼妙的简洁,还是yui魔术般的沙箱,都使我们产生无穷的想象。然而,js框架却又必然无法做到面面俱到的完美无瑕,比如jquery在OO方面做出的让步,以及yui在性能上做的牺牲,无不给人传达一种缺憾美、一种理想的现实主义。今天,我们来看看yui3在框架设计中的这些牺牲和让步,以便让我们更加深刻的理解yui3的全貌,并将其优势发挥至最佳。
1,种子的一步到位 or 颗粒化
所谓种子一步到位是指只要在页面引入一个种子文件的script标签,比如prototype和jquery,只要引入一个prototype.js或 jquery.js就可以了,他们将各自对dom操作和event的封装等等都囊括进一个文件中,并尽力将其做到最小,这样做的好处是显而易见的,使用框架非常简单。然而yui将这些功能做了级别划分和颗粒化设计,从概念上抽象出来“核心”、“工具”和“组件”,每个小功能放在一个文件当中,需要的时候则要自行去引用,yui文档中给出的大量demo都采用这种方法,这种设计显然不像jquery那样对初学者友好,而且使用起来不够傻瓜,为了实现一个小功能,甚至要引入三四个js文件。yui这样做的原因有两个,一是yui实在太大,把所有功能都搞进一个文件中确实有点不靠谱,二是为其动态加载的框架设计做铺垫。2,手动引入 or 动态加载
往页面中写js的传统方法是,直接将js文件作为script标签路径写在页面中,使用yui也可以这样引入页面,但yui更推荐使用loader进行动态加载。动态加载脚本的渊源很复杂,目前来看主要原因有三,其一,页面中手写js标签无论如何都会占用一个http请求,即使这个请求是一个304,动态加载的文件缓存后则不必发起真实的http请求,其二,动态加载可以实现按需加载,而且可以根据js文件之间的依赖进行去重和排序,手写标签加载js文件则必须让开发者去额外关注一下文件的排序、重复等等,其三,动态加载有利于页面代码的语义化,这使得开发者只关心“需要什么”,而不用去在意“如何得到”。当项目变得越发臃肿,维护成本越来越高的时候,这中小技巧会有不小的好处的。 -
前端开发流程浅析
流程,通俗来讲,就是许多人,在做一系列的事情时,怎样相互协调,安排好这一系列事情的先后顺序,有什么事先的约定,需要达到怎样的预期目标。
在UED里,前端同学需要处理的需求比较多,早些时候,前端这里的开发流程还是比较模糊的,UED以外的同学也不清楚这边的工作具体是怎样进行的,所以难免会有需求插队的情况发生,打乱了大家的计划,因此今年Q3的时候,在与SCM团队同学的共同努力下,形成了一个前端的ASSETS发布流程。
这个流程主要针对ASSETS发布的需求做了一些约定,制定了相关的几个时间点,包括审核需求、提交代码、daily测试、预发测试、正式发布到线上确认的时间。
ASSETS流程简述
需求审核
在提需求之前,需求方一般都会先找PM或者相应产品线的前端咨询一下,如果可行的话就会在周四之前将需求提到平台上,到了周四的时候,前端会结合自身的工作情况,将平台上的需求接收并纳入自己的日程中,预估完成时间、发布时间以及相关的发布简述。
编码开发
周四需求评估完以后,就会按计划开始处理需求,将涉及ASSETS发布的需求优先处理,不涉及ASSETS的放在靠后的时间处理,一般这段时间是从周四到下一周的周二。SCM会在每周四开一个新的ASSETS分枝供前端在下一周开发使用。
提交代码,合并到daily测试以及预发测试
如果有涉及到与后台开发相关的需求,前端的同学会在周一就把代码提交,这一天会有一次合并代码,方便后台开发来测试。其他的同学一般最晚会在周二下班之前把代码提交,在周二,会有多次合并代码到daily的操作,每次操作完后,SCM的同学会在前端的群里通知到大家,方便大家测试。
最近文章
- 教你如何让google baidu收录网站最快最多
- CSS Overflow属性详解
- CSS网页布局中易犯的10个小错误
- 网站结构设计之关键词群布局
- 使用CSS为图片添加的五种特殊效果
- 网站改版时需要注意的六大问题
- 谷歌-短信最流行-2010虎年短信免费(收发)
- 脆弱的用户体验
- UI在中国
- 探索移动Web网页编码设计
最近评论
- 开心凡人 在 当视觉设计师遇上产品经理、开发工程师 上的评论
- http://lpgjw.com 在 交互设计-突出重点,一目了然! 上的评论
- 懒人 在 交互设计-突出重点,一目了然! 上的评论
- 视觉设计 在 交互设计-突出重点,一目了然! 上的评论
- 淘宝购物返现 在 交互设计-突出重点,一目了然! 上的评论
分类目录
- SEO (3)
- 用户体验设计(UED) (50)
- 紫枫生活 (10)
- 网页重构 (4)
- 设计之外 (19)
- 设计开发 (28)
- CSS+HTML (16)
- CSS模板 (1)
- DW插件 (1)
- firefox、IE插件 (1)
- JavaScript (1)
- Jquery (1)
- WAP (4)
- 设计杂谈 (37)

