我一直在研究一些面向对象的概念,如设计模式,干净的代码和一些其他的东西,我仍然有一些关于如何进行的怀疑。例如,让我们看看我的例子。需要类建模帮助
我有一个Person类是一个模型。我想为某人添加一些验证,例如检查年龄是否与出生日期相符,并检查名称是否包含有效字符。
我有两种方法,但我不知道我应该使用哪一种。
方法之一: 我创建一个名为新类:
class ValidatePerson {}
和班级已方法:“validateAge()”和“validateName()”和每一个vallidation,我需要,我将有实施一种新方法。
方法有两个: 我创建了一个叫做抽象类: ValidatePerson {},将有一些commum方法,所有的验证和我将有:
class ValidatePersonAge extends ValidatePerson { validate();}
class ValidatePersonName extends ValidatePerson {validate();}
我想选择的方法有两个,原因我将不得不添加的每个新的验证规则都将是一个新类,并且不会影响其他类。就像,如果我需要改变新规则需要的commum方法,我可以覆盖它。在第一种方法中,我将不得不添加另一种方法,然后创建另一种方法或改变已经为其他方法工作的方法,这可能会导致崩溃。
事情是这样一种混淆所有这一切,因为即时通讯编程新,我想看到一些帮助和解释。我也读过类应该关闭更改,但打开扩展(或类似的东西)。
目前还不清楚你在这里问什么。你在寻找什么样的帮助? – Oded 2010-11-25 19:08:02