我正尝试使用策略模式来解决设计问题。这是一个大学系统。有一个用户,用户可以是学生,教授或管理员。所以,我有这样 <?php
namespace Domain\Model\User;
class User
{
private $user_type;
public function __construct(UserType $user_type)
{
我正在研究即将用于供应的应用程序。情况并不复杂。该应用程序管理有权访问服务的组。根据组可以访问的服务,应用不同的业务规则。 第一个想法(简单和愚蠢)将是一个大的if/else或开关/案例,将涵盖所有的情况。这里是如何可能看起来像伪代码: if (serviceA OR serviceB) {
doActionA();
}
if(serviceA AND serviceC) {
如何才能提高代码如下设计: class Foo {
public Configuration configure() {
return new Configuration().withPropertyA().withPropertyB();
}
}
class Configuration{
private boolean propertyA =
假设下面的类在运行时给定的单实例化对象从依赖注入容器中解决选择: class myClass {
private container; // DI container
function getMeAnObject(input) {
switch(input) {
case A: return this.container.get(singleton