本章内容:
揭秘前端开发工程师
欲精一行,必先通十行
增加代码的可读性--注释
提高重用性--公共组件和私有组件的维护
冗余和精简的矛盾--选择集中还是选择分散
磨刀不误砍柴工--前期的构思很重要
制订规范
团队合作最大的难度不是技术,是人

揭秘前端开发工程师

  • CSS布局是前端开发工程师的基本功,一定要熟练;
  • 不仅要会使用原生的JavaScript,还要会是使用JavaScript类库和Ajax;
  • 了解一门后台语言
    1. 1.有助于编写方便服务端工程师套脚本的模板;
    2. 2.在写Ajax应用的时候,可以自己模拟服务器端输出,方便调试;
    3. 3.对前端和服务端如何配合有清晰的大局观认识,了解数据传递的整个流程,以配合工程师共同制定复制效果的实现方案。
  • 富媒体应用,如flash-ActionScript 开发。(附属技能,多一技傍身,更强生!)

欲精一行,必先通十行

看到这个标题,有没有想到“豆瓣-张克军”画的那张图?一入眼是不是感觉很恐怖?仔细看看,我相信不少人至少通一半。除了必要的专业技能,多了解了解那些需要通的内容,确实对我们的帮助很大。

精一行之粒度细化问题:
  1. 精的粒度越小,则就业范围越小--自身使用价值也就越小;
  2. 前端行业界限非常不明显,多个领域渗透。例:ActionScript开发,需要前端与后端的配合,如果没有相应的知识及整个流程,工作中则会困难重重。

十行:只需要知道,不需要精。在前端领域中,一专多能是非常有必要的。

增加代码的可读性--注释

团队合作中,必要的一种手段。无论有计划的“直接团队合作”和意外的维护他人代码的“间接团队合作”,保证代码的可读性良好的绝佳武器就是注释。也有人在谈论注释的维护,说代码被改,而不改注释的问题,这种现象完全是不负责的表现,扣他两次工资,通报批评他两次,也就涨记性了。顽疾必须重药医!毕竟你自己写的代码在过一段时间回来再看没有注释也会云山雾罩不是?!

提高重用性--公共组件和私有组件的维护

团队合作很容易产生的问题就是--冗余。多个人分别写了同一功能代码,造成资源及其维护上的浪费。

避免冗余最好的办法就是根据代码的重用度分为共用组件和私有组件两类。设计共用组件时需要考虑让接口保持弹性,并且高度模块化。共用组件的稳定性也要保持高度警惕,一般提供“读”的权限。可考虑用SVN或规范团队约定。

冗余和精简的矛盾--选择集中还是选择分散

组织公共组件的粒度:
1.组织粒度越大,文件越集中,加载和管理越方便,但无用代码越多;
2.组织粒度越小,文件越分散,加载和管理越麻烦,但无用代码越少;

我们要加载方便就要适当的舍弃精简性,要保证精简性就要适当放弃加载的方便性。我们要认识到一点:完美的解决方案是不存在的,我们只能在精简和冗余中尽量找其中的平衡点。以JavaScript类库中的jQuery和YUI来做对比,jQuery选择了集中,YUI则是分散。

我们得认识到,只可能尽量减少冗余,不可能根除冗余。

磨刀不误砍柴工--前期的构思很重要

对中大型网站来说,如果还没有一个考虑成熟的前端框架前就开始写代码是会带来非常多的问题的,如代码冗余、多人合作容易冲突、代码组织没有规律等。

前期构思很重要。具体来说,构思的主要内容主要包括规范的制定、公共组件的设计和复杂功能的技术方案等。一般来说,前期构思占整个项目30%-60%的时间都是正常的。

制订规范

规范对于团队合作是非常重要的。它能有效指导团队成员按照一个统一的标准进行开发,尽量让开发过程平滑,减少不必要的冲突,提高开发效率并保证软件的质量。

团队合作最大的难度不是技术,是人

学会与人相处也是工程师必须的一门课,它的重要性甚至超过了技术本身。切记,能独立决策的问题的都是小问题,需要与人协商的问题才可能是大问题,要学会与人相处。

《编写高质量代码-Web前端开发修改之道》笔记--第二章 团队合作的更多相关文章

  1. 《编写高质量代码-Web前端开发修改之道》笔记--第一章 从网站重构说起

    本章内容: 糟糕的页面实现,头疼的维护工作 Web标准--结构.样式和行为的分离 前端的现状 打造高品质的前端代码,提高代码的可维护性--精简.重用.有序 糟糕的页面实现,头疼的维护工作 工作中最大的 ...

  2. 《编写高质量代码-Web前端开发修改之道》笔记--第三章 高质量的HTML

    本章内容: 标签的语义 为什么要使用语义化标签 如何确定你的标签是否语义良好 常见模块你真的很了解吗 标签的语义 HTML标签的设计都是有语义考虑的,部分标签的中文翻译图示及本章内容参看:3.1 标签 ...

  3. 编写高质量代码:Web前端开发修炼之道(一)

    最近老大给我们买来一些技术方面的书籍,其实很少搬着一本书好好的完整的看完过,每每看电子档的,也是打游击式的看看这章,瞅瞅那章,在那5本书中挑了一本比较单薄的<编写高质量代码web前端开发修炼之道 ...

  4. 读《编写高质量代码-Web前端开发修炼之道》笔记

    第一章 1.Web标准由一系列标准组合而成,核心理念是将网页的结构,样式和行为分离,所以分为三大部分:结构标准,样式标准和行为标准.结构标准包括XML标准,XHTML标准,HTML标准:样式标准指CS ...

  5. 编写高质量代码:Web前端开发修炼之道(四)

    这一节是继上一节高质量的Javascript 7)编程实用技巧 1:弹性 从 一个标签区和内容区的实例(就是点击不同的标签菜单显示不同的内容块)来说明不需要每个tabmenu都设置onclick事件, ...

  6. 编写高质量代码:Web前端开发修炼之道(三)

    第五章:高质量的Javascript 这章的内容我看的最久,这是跟我js基础没打好有着莫大的关系,但是还是耐着性子看完了, 不懂的东西都是百度上搜索,理解后再继续.下面是记录下来的笔记. 1)如何避免 ...

  7. 编写高质量代码:Web前端开发修炼之道(二)

    第四章:高质量的css 1)怪异模式和标准模式 在标准模式中,浏览器根据规范表现页面:而怪异模式通常模拟老式浏览器的行为以防止老站点无法工作. 他们两者之间的差异比较典型的表现在IE对盒模型的解析:在 ...

  8. 《编写高质量代码——Web前端开发修炼之道》读后随笔

    结构样式行为的分离 结构标准包括XML标准.XHTML标准.HTML标准:样式标准有CSS标准:行为标准主要包括DOM标准和ECMAScript标准. 通常的项目会按照如上的方式进行分离,但自己曾今做 ...

  9. 【读书笔记】读《编写高质量代码—Web前端开发修炼之道》 - JavaScript原型继承与面向对象

    JavaScript是基于原型的语言,通过new实例化出来的对象,其属性和行为来自于两部分,一部分来自于构造函数,另一部分是来自于原型.构造函数中定义的属性和行为的优先级比原型中定义的属性和优先级高, ...

随机推荐

  1. Java中介者设计模式

    中介者设计模式是一种很常见的设计模式,当中我们最为熟悉的就是我们的MVC框架.当中的C作为控制器就是一个详细的中介者,它的作用是把业务逻辑(Model),和视图(Viwe)隔离开来.使M V协调工作, ...

  2. problem:SVN error: (501 Not Implemented)

    problem:SVN error: (501 Not Implemented)solution:The repository was moved so the URL I was using is ...

  3. 十六款值得关注的NoSQL与NewSQL数据库--转载

    原文地址:http://tech.it168.com/a2014/0929/1670/000001670840_all.shtml [IT168 评论]传统关系型数据库在诞生之时并未考虑到如今如火如荼 ...

  4. 基于 Jenkins 快速搭建持续集成环境--转

    源地址:http://www.ibm.com/developerworks/cn/java/j-lo-jenkins/ 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础 ...

  5. vim中光标的前进和后退

    流行的文本编辑器通常都有前进和后退功能,可以在文件中曾经浏览过的位置之间来回移动.在 vim 中使用 Ctrl-O 执行后退,使用 Ctrl-I 执行前进.相关帮助: :help CTRL-O  :h ...

  6. 普通字符串与Hex编码字符串之间转换

    import java.io.UnsupportedEncodingException; import org.apache.commons.codec.binary.Hex; public clas ...

  7. linux云计算集群架构学习笔记:rhel7基本命令操作

     1-3-RHEL7基本命令操作 1.1Linux终端介绍 Shell提示符 Bash Shell基本语法. 1.2基本命令的使用:ls.pwd.cd. 1.3查看系统和BIOS硬件时间. 1.4 L ...

  8. Oracle中exists与in的区别

    有两个简单例子,以说明 "exists"和"in"的效率问题 1) select * from T1 where exists(select 1 from T2 ...

  9. CF Error Correct System

    Error Correct System time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  10. ClassLoader类加载器

    总的来说,当动态加载一个资源时,至少有三种类加载器可供选择: 系统类加载器(也被称为应用类加载器)(system classloader) 当前类加载器(current classloader) 当前 ...