码迷,mamicode.com
首页 > 其他好文 > 详细

根据实例探讨源代码管理

时间:2016-06-17 22:36:04      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:

现代软件产业经过几十年的发展,一个软件有一个人完成的情况已经几乎不可见了,软件都是在相互合作中完成的。合作的最小单位是两人。两人一起看代码并发表意见。

代码风格规范:

简明,易读,无二义性(缩进,行宽,括号,断行与空白的{}行,分行,命名,下划线,大小写,注释)

代码设计规范:

函数,goto,错误处理,如何处理C++中的类(类,class vs.struct,公共/保护/私有成员,数据成员,虚函数,构造函数,析构函数,new和delete,运算符,异常,类型继承)

代码复审:

1.找出代码的错误(编码的错误、不符合团队代码规范的地方)

2.发现逻辑错误

3.发现算法错误

4.发现潜在的错误和回归性错误

5.发现需要改进的地方

结对编程:

1.在开发层次,结对编程能提供更好的设计质量和代码质量,两人合作解问题的能力更强

2.增强开发人员的信心

3.取得更高的投入产出比

两人合作的不同阶段和技巧:

1.萌芽阶段

2.磨合阶段

3.规范阶段

4.创造阶段

5.解体阶段

 

软件设计与实现

1.分析和设计方法

2.图形建模和分析方法

①表达实体和实体之间的关系(思维导图、实体关系图)

②表达数据的流动

③表达控制流

④统一的表达方式

3.其他设计方法

①形式化的方法

②文学化编程

4.从设计文档到实现

①将修改即集成到代码中

②开发人员的标准工作流程(如图片所示)

③代码完成

 

例子;

代码清单1

namespace DemoUser

{

public:ckass User

{

public User(string userEmail)

{

m_email=userEmail;

}

private string m_email;

}

}

///<summary>

///A test for User(string)

///</summary>

[TestMethod()]

public void ConstructorTest()

{

string userEmail=null;

User target=new User(userEmail);

Assert.Inconclusive("TODO:Implement code to verify target");

}

[TestMethod()]

 

public void ConstructorTest()

{

string userEmail="someone@somewhere.com";

User target=new User(userEmail);

Assert.IsTrue(target !=null);

}

 

从上面这个例子可以看出,创建单元测试函数的主要步骤是:

1.设置数据(一个假想的正确的E-mail地址)

2.使用被测试类型的数据(用E-mail地址来创建一个User类的实体)

3.比较实际结果和预期结果(Assert.IsTrue(target !=null))

根据实例探讨源代码管理

标签:

原文地址:http://www.cnblogs.com/myshen/p/5595260.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!