建议133:用camelCasing命名私有字段和局部变量 私有变量和局部变量只对本类型负责,它们在命名方式也采用和开放的属性及字段不同的方法。camelCasing很适合这类命名。 camelCasing和PascalCasing的区别是它的首字母是小写的。之所以要采用这两种不同的命名规则,是为了 ...
建议134:有条件地使用前缀 在.NET的设计规范中,不建议使用前缀。但是,即便是微软自己依然广泛的使用这前缀。 最典型的前缀是m_,这种命名一方面是考虑到历史沿革中的习惯问题,另一方面也许我们确实有必要这么做。 在一个不是很庞大的类型中,我们确实不应该使用任何前缀。各类设计规范也总建议我们保持一个 ...
结对成员: 学号: 2015035107109 学号: 2015035107059 结对编程技术是指两位程序员坐在同一工作台前开发软件。与两位程序员各自独立工作相比,结对编程能编写出质量更高的代码。 第一次尝试结对编程,让我有了很大的收获,自己跟着他人的思路去敲代码,在根据自己的经验,共同变成高质量 ...
分类:
其他好文 时间:
2017-12-11 00:49:56
阅读次数:
166
这一周对构建之法的阅读量比较少,看的比较多的就是团队合作,结对合作。 正好老师也要求了我们两人结队合作做一个网页版的小学生四则运算,虽说工程的比较简单,但是对于刚接触制作网页的知识的我们编起来还是比较吃力的,刚开始我们就大致分配好了两个人的任务,队友的html语言知识学的比较好,大部分的页面都是她做 ...
分类:
其他好文 时间:
2017-12-09 19:29:22
阅读次数:
132
建议109:谨慎使用嵌套类 使用嵌套类的原则是:当某类型需要访问另一个类型的私有成员时,才将它实现为嵌套类。一个典型的例子是在实现集合时,要为集合实现迭代器,这时用到了嵌套类。代码如下所示: 我们可以注意到,嵌套类ArrayListEnumeratorSimple访问了若干外部类ArrayList的 ...
建议110:用类来代替enum 枚举(enum)用来表示一组固定的值。例如,为了表示星期信息,我们可以定义枚举Week: 枚举最大的优点在于它的类型是值类型。相比较引用类型来说,它可以在关键算法中提升性能,因为它不需要创建在“堆”中。但是,如果不考虑这方面的因素,我们不妨让类(引用类型)来代替枚举。 ...
分类:
编程语言 时间:
2017-12-07 20:55:58
阅读次数:
204
建议111:避免双向耦合 双向耦合是指两个类型之间相互引用。下面的代码是一种典型的双向耦合: 双向耦合在同一项目下,不会存在太多的问题,带来的只是设计问题。不过,如果两个类在不同的项目中时,就必须考虑解耦了,因为.NET不允许项目之间相互引用。如果尝试两个项目相互引用将出现错误提示。 常见的解耦方式 ...
建议101:使用扩展方法,向现有类型“添加”方法 考虑如何让一个sealed类型具备新的行为。以往我们会创建一个包装器类,然后为其添加方法,而这看上去一点儿也不优雅。我们也许会考虑修改设计,直接修改sealed类型,然后为其发布一个新的版本,但这依赖于你拥有全部的源码。更多的时候,我们会采取针对第三 ...
建议102:区分接口和抽象类的应用场合 接口和抽象类有一些显而易见的区别: 这些区别导致两者的应用场景不同: 从某种角度来看,抽象类比接口更具备代码的重用性。子类无须编写代码即可具备一个共性的行为。 采用抽象类的另一个好处是,如果为为基类增加一个方法,则继承该基类的所有子类自然就会具备这个额外的方法 ...
建议106:为静态类添加静态构造函数 静态类可以拥有构造方法,这就是静态构造方法。静态构造方法与实例构造方法比较有几个自己的特点: 只被执行一次,且在第一次调用类成员之前被运行时执行。 代码无法调用它,不像实例构造方法使用new关键字就可以被执行。 没有访问标识符。 不能带任何参数。 使用静态构造方 ...