我在写一个用于验证某些特定对象的库。 我实施它像战略模式。验证库设计模式选择
什么是实施验证库的最佳模式?
我的一些代码如下所示。
//INTERFACE
public interface IValidator {
public boolean validate(Object o) throws ValidationException;
}
//VALIDATOR OBJECT
public class Validator {
private IValidator validator;
public Validator(IValidator validator)
{
this.validator=validator;
}
public boolean validate(Object o) throws ValidationException
{
return this.validator.validate(o);
}
}
//EMAIL VALIDATOR
public class EmailValidator implements IValidator{
@Override
public boolean validate(Object o) throws ValidationException {
//VALIDATE E MAIL HERE
return false;
}
}
//TEST RUN
Validator validator = new Validator(new EmailValidator());
validator.validate("some email");
我将跳过整个'Validator'类和重命名的接口'Validator'。验证程序类似乎没有真正的目的。 – Bart
不,不是。你为什么想到新的验证类来自AddressValidator,PhoneNoValidator。它不会是柔性设计。 http://en.wikipedia.org/wiki/Strategy_pattern – Tugrul