Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一个对象应该有一个状态和行为。在实现外观模式时,外观对象通常缺少状态并且只有行为。
这种模式可以接受吗?这是一个悬而未决的问题,所以请提供更多信息然后是/否
没有像“一个对象应该总是有一个状态和行为”这样的规则。相反,有一些模式建议您的对象具有很少或没有状态(如无状态服务)和很少或没有行为(如数据传输对象)。至于外观设计模式,我相信它并没有明确说明它的状态和行为,所以这取决于你如何实现它,但大多数情况下它只是不需要任何状态......
好吧,答案在问题的正文中。Facade 对于它自己来说是无用的,并且总是伴随着另一个确实有状态的对象。Facade 只增加了耦合对象接口。所以是的,没关系。
门面可能有状态,因为它们可能必须自己做一些工作,例如审计日志或统计信息生成。
如果他们不需要状态,那也是完全可以接受的。