Agile java 前两章小结
概念类:
什么是测试驱动开发(TDD: test-driven development)
这是一种引入大量底层反馈的技术。
请您一定要记住,使用TDD编写代码的时候,最重要的是采用尽量小的步伐并得到经常的反馈。当我说“小”的时候,我的意思是非常小。。如果您认为您正采用小的步伐,请尝试采用更小的步伐。
工厂方法:负责创建和返回对象的方法。
OO:
Uml它本身不是一种方法,而是一种图形化语言。UML是一种用来文档化任何面向对象系统的工具。
一个面向对象的系统,更关注行为而不是数据。
面向对象系统对行为建模,行为通过面向对象发送消息产生作用——让对象做某件事或者从对象获取数据。
对象是事物的抽象,不要使用复数名词作为类名。
对于好的面向对象设计,您会发现设计影响命名的能力。一个设计良好的类处理一件重要的事情,并且仅仅处理这一件事情。【单职责原则】
设计类:
一开始的概要设计,不会涉及到特别多的细节。随着对客户需求的更多了解,您将持续优化和提炼您的设计。
方法类:
测试方法命名 要遵从下面的标准:
?方法必须声明为public
?方法的返回值必须为void
?方法的名字必须小写test为前缀
?方法不能接受任何参数
对于XP 和 scrum 的区别
1 迭代周期
2 迭代期间是否允许修改需求
XP允许,scrum不允许。
Scrum 注重的是self-orgnizaition,而xp注重的是强有力的工程实践约束。
Agile开发的循环是:
?编写一个小的测试,用来断言某些功能正确与否。
?运行测试,如果结果是失败。
?编写代码,使测试通过。
?重构测试和代码,清除重复的概念,确保代码富于表现力。
重构类:
保证代码干净,通过两种机制来实现:
1保证在系统中没有重复的代码。
(每个字符串都出现两次。如果您不得不改变其中之一的话,你你将不得不改变另一个。这样工作量就更多了,而且意味着改变了一个,没有改变另一个,从而代码中引入了缺陷)
2保证代码是干净的,并且富有表现力,可以清晰地体现程序员的意图。
重构:
第一步要清除不必要的局部变量 ------那些丝毫无助于对方法的理解的局部变量。
第二步:代码中到处嵌入字符串被视作不良的编程习惯。一个原因是,如果每个字符串所代表的意义不清晰的话,很难理解这样的代码。
编写的方法代码量,在一到六行之间。有些方法在六行到十二行左右。如果方法的代码行数超过这个长度或者更长一些,您就应该着手去重构他们。最主要的目标是保证方法能够快速被理解和维护。
等到代码与系统中其他部分纠缠在一起时,再修改代码中的问题,比一开始就去修改,要付出更多的代价。不要等太久。