csi*_*csi 5 php oop methods function
想象一个用于跟踪对手之间游戏的“游戏”类。使用 1 种方法根据用户输入参数检索游戏是更好的 OOP,还是具有多种特定于检索目标的方法更好?
class Games {
function get_games($game_id = NULL, $stadium_id = NULL, $start_date = NULL,
$end_date = NULL, $count = 999); {}
}
Run Code Online (Sandbox Code Playgroud)
VS
class Games {
function get_all_games($count = 999); {}
function get_game_by_id($game_id = 1); {}
function get_games_by_stadium($stadium_id = 1); {}
function get_games_by_dates($start_date = NULL; $end_date = NULL) {}
}
Run Code Online (Sandbox Code Playgroud)
对好处和任何编码/snytax 提示的解释将不胜感激。谢谢。
我练习 OOP 的次数越多,我就越发现自己遵循将参数传递给方法的规则。有点像有很多级别的嵌套 if 语句,我发现如果我有两个以上,我可能会做错什么。
保持代码简单。您正在编写一个执行某些操作的方法,而不是执行所有操作的过程代码块。如果你想玩游戏,那就玩游戏吧。如果您想获取某个日期范围的列表,那么就这样做。
不过我想指出的是,您实际上并不需要 get_all_games() - 您可以只允许 get_games_by_dates() 不带参数地传递。如果它没有得到任何,那么它会得到从永远开始的每个日期的游戏(所有游戏)