- 本章内容:
- 揭秘前端开发工程师
- 欲精一行,必先通十行
- 增加代码的可读性--注释
- 提高重用性--公共组件和私有组件的维护
- 冗余和精简的矛盾--选择集中还是选择分散
- 磨刀不误砍柴工--前期的构思很重要
- 制订规范
- 团队合作最大的难度不是技术,是人
揭秘前端开发工程师
- CSS布局是前端开发工程师的基本功,一定要熟练;
- 不仅要会使用原生的JavaScript,还要会是使用JavaScript类库和Ajax;
- 了解一门后台语言
- 1.有助于编写方便服务端工程师套脚本的模板;
- 2.在写Ajax应用的时候,可以自己模拟服务器端输出,方便调试;
- 3.对前端和服务端如何配合有清晰的大局观认识,了解数据传递的整个流程,以配合工程师共同制定复制效果的实现方案。
- 富媒体应用,如flash-ActionScript 开发。(附属技能,多一技傍身,更强生!)
欲精一行,必先通十行
看到这个标题,有没有想到“豆瓣-张克军”画的那张图?一入眼是不是感觉很恐怖?仔细看看,我相信不少人至少通一半。除了必要的专业技能,多了解了解那些需要通的内容,确实对我们的帮助很大。
- 精一行之粒度细化问题:
-
- 精的粒度越小,则就业范围越小--自身使用价值也就越小;
- 前端行业界限非常不明显,多个领域渗透。例:ActionScript开发,需要前端与后端的配合,如果没有相应的知识及整个流程,工作中则会困难重重。
十行:只需要知道,不需要精。在前端领域中,一专多能是非常有必要的。
增加代码的可读性--注释
团队合作中,必要的一种手段。无论有计划的“直接团队合作”和意外的维护他人代码的“间接团队合作”,保证代码的可读性良好的绝佳武器就是注释。也有人在谈论注释的维护,说代码被改,而不改注释的问题,这种现象完全是不负责的表现,扣他两次工资,通报批评他两次,也就涨记性了。顽疾必须重药医!毕竟你自己写的代码在过一段时间回来再看没有注释也会云山雾罩不是?!
提高重用性--公共组件和私有组件的维护
团队合作很容易产生的问题就是--冗余。多个人分别写了同一功能代码,造成资源及其维护上的浪费。
避免冗余最好的办法就是根据代码的重用度分为共用组件和私有组件两类。设计共用组件时需要考虑让接口保持弹性,并且高度模块化。共用组件的稳定性也要保持高度警惕,一般提供“读”的权限。可考虑用SVN或规范团队约定。
冗余和精简的矛盾--选择集中还是选择分散
- 组织公共组件的粒度:
- 1.组织粒度越大,文件越集中,加载和管理越方便,但无用代码越多;
- 2.组织粒度越小,文件越分散,加载和管理越麻烦,但无用代码越少;
我们要加载方便就要适当的舍弃精简性,要保证精简性就要适当放弃加载的方便性。我们要认识到一点:完美的解决方案是不存在的,我们只能在精简和冗余中尽量找其中的平衡点。以JavaScript类库中的jQuery和YUI来做对比,jQuery选择了集中,YUI则是分散。
我们得认识到,只可能尽量减少冗余,不可能根除冗余。
磨刀不误砍柴工--前期的构思很重要
对中大型网站来说,如果还没有一个考虑成熟的前端框架前就开始写代码是会带来非常多的问题的,如代码冗余、多人合作容易冲突、代码组织没有规律等。
前期构思很重要。具体来说,构思的主要内容主要包括规范的制定、公共组件的设计和复杂功能的技术方案等。一般来说,前期构思占整个项目30%-60%的时间都是正常的。
制订规范
规范对于团队合作是非常重要的。它能有效指导团队成员按照一个统一的标准进行开发,尽量让开发过程平滑,减少不必要的冲突,提高开发效率并保证软件的质量。
团队合作最大的难度不是技术,是人
学会与人相处也是工程师必须的一门课,它的重要性甚至超过了技术本身。切记,能独立决策的问题的都是小问题,需要与人协商的问题才可能是大问题,要学会与人相处。