得墨忒耳定律 看起来很香,但是实践起来太繁琐了,还是我的理解有问题
https://zh.wikipedia.org/wiki/%E5%BE%97%E5%A2%A8%E5%BF%92%E8%80%B3%E5%AE%9A%E5%BE%8B
可以简单地以下面任一种方式总结:
每个单元对于其他的单元只能拥有有限的知识:只是与当前单元紧密联系的单元; 每个单元只能和它的朋友交谈:不能和陌生单元交谈; 只和自己直接的朋友交谈。
上面是从 wiki 里粘贴出来的。
我举一个具体的例子。一个微服务对外提供接口,业务逻辑是一个聊天室
第一层:rpc handler
第二层:聊天室
第三层:聊天室中的人
第四层:聊天室中的人的消息
。。。
现在有这个一个需求,搜索消息中出现“xx”的消息。 那么按照这个定律去松耦合的话,要从第一层一直传到最后一层。。。 每一层都去下一层请求消息,这样感觉也是不对的。。。
又或者第一层想要直接获取聊天室中的,性别为男的人。 那么这个时候完全能够绕过第二层拿到信息的,是否也必须在第二层去创建一个函数(如果后续没有修改,那纯粹成透传了)。。。
这个怎么解决呢?