1

考虑 3 个类:

  • 数据
  • 机械手1
  • 机械手2

    数据类有一些属性:a,b,c

    我正在寻找一种设计模式,因此Manipulator1只能对ab进行读写访问,而Manipulator2只能更改bc

    有任何想法吗?

    我正在用Java BTW编码。

  • 4

    2 回答 2

    2

    它可以看作是代理模式的一个应用案例,代理控制对数据对象的访问。

    就个人而言,我认为将操纵器编程为仅访问相关字段就足够了,但是如果出于对恶意客户端或类似情况的恐惧而必须对数据进行访问限制,那么代理是正确的做法。

    于 2012-04-21T10:18:59.073 回答
    2

    您可以让 Data 类实现两个不同的接口,并让 Manipulator 类每个只知道其中一个。

    您可能还想看看Interface Segregation Principle

    于 2012-04-21T10:28:57.347 回答