速6开发小记

作者:bibodeng 发布于:2013-7-29 19:02 Monday 分类:技术交流

点击查看原图

经过3个星期的开发和测试,我参与的专题速度与激情总算是上线发布了,如今也运行了接近三天。发放了近500份奖品,为活动提供了游戏的基础。这次开发和许多同事进行了合作和接触,最多的要数重构工程师和测试,还有编辑了。当然离不开我的leader的辅助和背后的支持。当我在战战兢兢面对困难的时候,他们很轻松就能把问题化得简单,并且启发我去思考。

 

遇到的挑战

IE6下问题多多,但是也是检验你的程序是否过关,你对兼容性是否了解的试金石。怪不得微博上那么多黑IE6的,要是我,绝对不用提供网页给那些IE6用户继续使用。
 
IE6下的png图片显示bug,透明度会消失,这时候你就要专门对ie6写一个hack,从而挽回一点点可怜的显示效果。一种方法是用js来修正,另外一种是用css直接遮罩,或者写一个特别的滤镜样式。
 
IE6下的url的bug,因为IE6对utf8支持不完全,所以有些代码会这样:
http://topics.kankan.com/main.php?title=迅雷看看零距离体验第%4 %期 这样奇怪的问题,所以你必须要用一个encodeURIComponent( )函数来对url的字符做一个转换,这样才能防止它在被点击的时候传递的参数乱码。
其它就略了,还有好多下次一并总结出来,包括php端的编程可以提升的地方。
 

总结一下各种效果:

震颤效果
 
 
// 震动效果
function shake(obj){
    var $panel = $(obj);
    var box_left = parseInt($panel.css('left'));
    $panel.css({'left': box_left});
    for(var i=1; i<=4; i++){
        $panel.animate({left:box_left-(40-10*i)},50);
        $panel.animate({left:box_left+2*(40-10*i)},50);
    }
}
 
窗口左右晃动4次,每次幅度逐渐减小
 
向上滚动效果
// 向上滚动列表
function scroll_list(list)
{
    var list_height = 0;
    $(list).children('li').each(function(index){
        list_height += $(this).height();
    });
    // 设置向上滚动
    setInterval(function(){
        var top = parseInt($(list).css('top'));
        var p_height = $(list).parent().height();
        if(top < 0-list_height)
            top =  p_height;     // 从右开始
        $(list).css('top', (top-1)+'px');  // 每次移动1个像素*/
    }, 60);
}
 
像卷轴门一样向上滚动,如果滚完了就重头再来。
 
对于工程来说,每一次经验都能够加深一些体会,同时也提升编程技能。很多时候对于一个功能,往往能够抽象出来成为一个库中的工具把它写到common.php或common.js中。我发现前端工程师也可以使用很多架构的方法,例如用面向对象来实现整个功能,还可以将功能按照模块来划分。虽然听说前端只是薄薄的一层,再深入也还是那样子。而且说到跨浏览器我都怕了,程序员只有几个,但是浏览器层出不穷,而且有些互相不兼容,有时候拆了东墙补西墙,或者是为了找到一种hack,google了几十次。貌似搞前端都需要样样精通。相对来讲,在写php的过程中明显感到要太平许多,这次没有被产品和测试折磨死就已经算不错了。
 

分工明确的优缺点

在公司里面,有一个很明显的感受就是分工明确,产品提供整个需求,编辑提供内容,设计搞ps,重构写好html和css,而研发则写js和php逻辑部分。分工明确有好处也有坏处,总体来说还是好处比较多,要是一个人全干了那会累死。既然分工明确,那你只要把好你分内的关就ok了,要修改的时候一定要通知合作的同事去修改,只要沟通渠道良好,效率一般也很高,例如你提出一个地方要修改的时候,告诉对方,几分钟就搞定了。这就是专业的速度,如果自己去弄未必有这么快。
分工明确的优点:
  1. 专业,质量有保证
  2. 工作量降低
  3. 流程明确,效率看沟通
 
分工明确也有缺点:
  1. 难协调
  2. 增加沟通成本
首先是难协调,工作时间,还有整个项目的内容和代码,有时候需要等他人完成之后你才能继续开始,浪费了一部分时间,而忙的时候又不可开交。还有项目的内容很多也是要经过协商,不是你一个人说了就算,所以有时候很忙,往往是忙在发邮件,发消息上。其次是当出现同事不了解谁负责哪块的时候,往往找错人,增加了不必要的沟通负担。
 

需要保持的习惯:

随时和同事同步你的工作内容       在这次的项目中没有使用svn这样的版本管理工具,估计是一些非开发人员他们可能不会用。但是这样就让我很麻烦,每次都需要保持若干个版本,放在不同的文件夹,但是总体来说还是能够保持一致的。而且每个人都有每个人自己的版本,那个拥有最全版本的人就苦逼了,他需要负责将各个版本都综合起来,然后到最后发布。这个人就是开发!因为其他的同事都是上游,而开发是下游,当然也只有开发才有权限将代码发布到外网服务器上(电信和网通两种服务器都要)。
 
注重细节,有良好的debug能力     这个太重要了,很多细节的地方不注意,往往能够让你找半天找不到错误所在,而细节有时候也能看出来基础扎不扎实。注意各种细节是一个良好的习惯,从小学时代的考试开始就一直很重要,注意好细节能够让程序更加严谨。有时候我们会感叹测试的眼睛怎么那么利,测试的用例比你的少,但是他们看出来的问题真多,也许是因为自己陷在自己的逻辑中比较难看出破绽,但是错了的时候,你还是有直觉的。很可能就是难以注意到的地方,让程序出人意料。如果需求定义得很明确的话,那么开发很牛,那么基本上不会出什么纰漏,测试也找不出什么漏洞,但是对于经验缺乏的菜鸟而言,那么多浏览器在向他狰狞地微笑,一切都没那么简单。
 
淡定       当项目快要到期了,那边催你赶紧上线,而测试催你修bug的时候,这个时候最考验心理素质了。由于第一次上线发布,当时我还不知道怎么操作,而我的工作导师又离开去开会了,碰到了问题请教了许多人,但是还是弄了好久才解决。我在这里心理素质一般,但做大事的人一定要有胆色,够淡定。做小事需要细心,上面讲了。刘铭传年纪轻轻上去割了强盗的头,邺侯孩提之时就对皇帝的问题对答如流,并无惧色。有时候做人就得猛一点,内心强大一点。
 
生活与工作兼顾         身体是革命的本钱,在上周的开发过程中,我过于专注了,导致忘了点饭,然后吃了泡面,又稀里糊涂地把伞给弄落在大巴上了,结果深圳天气又多变,第二天淋雨上班,壮烈地感冒了,为此规好师兄还教导了我一番。本来工作就累,要自己照顾自己,病了可怎么工作呢,好在周末我呼呼大睡了好多个半天,才慢慢好起来。这让我意思到好好保养自己,增强自己的体质才是最重要的。身体是革命的本钱,革命尚未成功,可不能先挂了。今后尽量要让自己生活健康规律,充满乐趣。锻炼,游玩,交友都应该占生活更多的比重。学习工作靠的是效率,过度是不值得提倡的。还是找个人一起相互扶持照顾最好。
 
附上链接一个: http://topics.kankan.com/speedAndPassion

我自认为将来是要为自己打工的,所以对于运作和见识方面也有心留意。像周鸿祎那样振奋我心的偶像的故事,给我打鸡血一样的动力。

by bibodeng

标签: 工作 总结 速6

评论:

捣乱
2013-07-30 00:05
惊奇的发现里面有个「创作团队」
bibo-果冻
2013-07-30 07:29
@捣乱:是有的,编制和分工明确,所以能够接触到各色人。

发表评论:

Powered by emlog 京ICP备16017775