技术开发 频道

初学者应该了解的敏捷开发术语

  功能测试

  功能测试是一个更大的考验,它同样也是一个单元测试,被设计用于测试类包或整个应用基础设施的子部分。功能测试主要是用来验证应用程序是否满足了客户对性能、结果和有效性的需求,Symptom: 功能测试不一定是一个单元测试,另外,并非所有的功能测试是一个验收测试

  验收测试

  验收测试名义上与功能测试相同.验收测试是指客户希望看到他们所签署的功能实现(译注:需求)全部通过验证。Symptom: 如果客户在演示过程中(译注:验收过程中)对应用程序不满意的话,将会终止本次验收测试,待解决后再进行下一次验收。

  SOLID

  一组五项原则:单一职责原则,开闭原则,里氏代换原则,接口隔离原则,依赖倒转原则。

  简单责任原则

  一个对象类,一个服务数据封装类,一个网络服务,一个函数或过程应该只有一个单一的责任。

  症候:很难为复杂的类写单元测试, 因为它可能需要做上千次的重复。

  开闭原则 Open Closed Principle

  接受扩展,但是不接受修改。意思是你可以拥有子类的对象,但是这个对象是被封装的,不允许外部对象通过对封装的内部进行改动。

  症状:对象实现的溢出,硬编码以来, 和不是面向java接口的编程(或者接口像构造器 比如 Scala 特性和混合)。

  Liskov Substitution Principle(里氏代换原则)

  具有交换能力的思路,表示成DBC(契约式设计)。

  对象X是T的实现类,那么我能够用对象X来代换T。

  这是一个基本模拟对象,模拟实现一个框架,做一般性测试;代理远程对象,可持久化对象;应用服务器和生命周期监控;即插即用且可重新开始的应用,我能继续,但我不会;

  (译注:原文简直是不知道作者想要说什么,下边给出更容易理解的LSP解释:里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。里氏代换原则是对“开-闭”原则的补充。实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。)

  ISP:接口隔离原则

  对一个服务接口来说,实现一个功能比实现一堆功能要好.Symptom: 未能遵循KISS(译注:保持简单)原则. 过去,在非标准C++字符串库里,每个人都想向其中扔一些操纵C/C++ String(char*)的方法。

  依赖倒转原则

  即不要在两个有直接关系且相互依赖的对象之间硬编码。比如在Java EE环境中,你就需要使用一个依赖注入容器(比如CDI)来注入不同的托管Bean到某个服务Bean之中。依笔者浅见,依赖倒转还有另一层含义,为服务或Java Bean提供了一种生命周期管理机制。它们的生命周期被应用户服务容器、云平台供应商或者其它您正在用的其它类似的东东所管理。

  还有另一种学院路线的想法:每一个应用(的生命周期)都将是受控的是一种趋势和努力方向,不管是操作系统、虚拟机、WEB容器或者时下流行的移动平台(iOS和安卓)。

  设计模式

  Erich Gamma等人写过一本经典的关于设计模式的书,向你的技术负责人去借这本书;如果她/他没有这本书,我只能说这真的很烂。问他们要一笔培训预算,然后自己去买一本。

4
相关文章