【发布时间】:2015-08-12 20:18:59
【问题描述】:
我有一个类,其中大多数方法都需要运行。 我通常在实例化 Object 后调用这些方法。
<?php
try {
$obj = new MyClassName();
$obj->Method1($var);
$obj->Method2($var);
$obj->Method3($var);
$obj->Method4($var);
} catch(Exception $e) {
}
?>
随着我的类的增长,以及更多的方法被引入,我发现我需要确保某些方法被调用。
起初,我在 __construct() 中调用了所有必需的方法,然后再次调用这些相同的方法,以防我需要更改。
我的其他验证技术是运行 get_object_vars() 并检查特定属性是否存在。
我不介意我目前的验证方式,但我必须询问是否有更简单/更好的方式。
【问题讨论】:
-
我一般会说构造函数是他们的地方
-
您必须只验证某些方法还是全部验证?
-
这对我来说似乎是一个失败的设计,虽然它是如此抽象以至于很难说。
-
不知道代码听起来有点像你可能会从某种Dependency Injection 中受益。你读过很多关于设计模式的书吗? PoEAA 是一本很好的读物,仍然非常相关..
-
需要运行是什么意思?它们是否需要在对象用于某件事之前运行?