我们有A和B类,它们分别代表数据库中的_A和_B。 A和B有一个共同的祖先C.
有一种新功能,有时将这两种数据结构与多对多关系联系起来。我们为此创建一个表_A_B_rel。
一些伪代码:
var a = new A();
var b = new B();
//prerequisites for A class to have relation to B
a->foo();
//create B in database
b->insert();
query("INSERT INTO _A_B_rel set a_id = ${a->id}, b_id = ${b->id}");
我的问题是这段代码应该在哪里? A和B都不对。我想要一些服务来提供这个功能,但是代表与一个类的多对多关系并不是很直观。是否存在我不了解的既定设计模式?或者假设服务不应被视为关系的表示,而是仅仅启用功能(主要通过命名)。