邮票耦合改进
Stamp Coupling Improvement
我在大学 Stamp Coupling 学习编程。我们正在学习系统分析和设计。我的同学问我问题,如何解决Stamp Coupling?我问老师说"Use an interface to limit access from clients",我还是理解错了。
好吧,由于打印方法只需要客户的姓名、地址和账单信息,您不必向它传递任何其他信息。
你可以定义一个接口:
public interface PrintableCustomer
{
public ... getName();
public ... getAddress();
public ... getBillingInfo();
}
现在,让 Customer
class 实施 PrintableCustomer
。
打印方法现在可以接受 PrintableCustomer
而不是 Customer
。
void print (PrintableCustomer customer)
{
...
}
现在 print()
只能看到它需要的属性。
我在大学 Stamp Coupling 学习编程。我们正在学习系统分析和设计。我的同学问我问题,如何解决Stamp Coupling?我问老师说"Use an interface to limit access from clients",我还是理解错了。
好吧,由于打印方法只需要客户的姓名、地址和账单信息,您不必向它传递任何其他信息。
你可以定义一个接口:
public interface PrintableCustomer
{
public ... getName();
public ... getAddress();
public ... getBillingInfo();
}
现在,让 Customer
class 实施 PrintableCustomer
。
打印方法现在可以接受 PrintableCustomer
而不是 Customer
。
void print (PrintableCustomer customer)
{
...
}
现在 print()
只能看到它需要的属性。