现代软件工程第二章
软件工程师
软件工程师的特质
责任感,敏锐的意识,坦诚,抗压能力 ,公平感,注重细节,务实,技术能力
程序员应具备的基本技能
1.编写代码和阅读代码:
程序设计语言,集成开发环境,读懂已经存在的代码
2.代码质量(保证自己负责的代码的质量)
代码规范,测试,调试
3.版本控制(管理自己或团队代码)
个人在软件团队中的作用
软件系统的绝大部分模块都是由个人开发或维护的。在软件工程的术语中, 我们把这些单个的成员叫做 Individual Contributor (IC).
个人工作的质量直接影响产品质量
软件团队
高效团队的特征
目标意识,参与意识,信任意识,进步意识,技能的多样化
团队的组织模式
封闭模式—遵循传统的权利层级模式
随机模式—团队松散,依靠团队成员的个人自发性
开放模式—尝试组成一种团队,既具有封闭模式团队的可控性,还具有随机模式团队的创新性。
同步模式—有赖于问题的自然区分 ,不需要很多的交流就可以将成员组织起来共同解决问题。
不同的团队类型
主程序员团队,
“一窝蜂”团队
功能团队
代码规范
编程的依据是详细设计的结果,因此程序的质量主要取决于设计,但代码的质量也在很大程度上影响着程序的质量(可理解性、可测试性、可修改性)
源程序文档化
在源程序中可包含一些内部文档,以帮助阅读和理解源程序
在源程序中的内部文档主要包括:
标识符的命名:
选择含义明确的名字,使其能正确提示标识符所代表的实体
名字不要太长,太长会增加打字量,且易出错。必要时可使用缩写
不用相似的名字,相似的名字容易混淆,不易发现错误
匈牙利命名法
要求前缀字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,单词第一个字母大写。
小驼峰式命名法
第一个单词首字母小写,后面其他单词首字母大写。
大驼峰式命名法
每个单词的第一个字母都要大写。
下划线命名法
单词与单词之间通过下划线连接。
注解
程序中的注解用来帮助人们理解程序,决不是可有可无的
一些正规的程序文本中,注解行的数量约占整个源程序的1/3到1