【发布时间】:2016-09-13 03:54:43
【问题描述】:
假设我有一个名为 send_welcome_email() 的函数和一个名为 User 的类(在 Python 中实现,但希望非 Python 开发人员易于理解):
class User:
email = TextField()
first_name = TextField()
last_name = TextField()
def send_welcome_email(user):
msg = EmailMessage(recipient=user.email)
msg.send()
在这种情况下,最好将函数接口定义为:
def send_welcome_email(email)
使函数不与User类耦合。
我知道这是一个已知的反模式,但我找不到它。谁知道它叫什么?
【问题讨论】:
-
我在下面的评论中发布了这个,但认为它值得后续讨论。假设在 send_welcome_email() 中,它需要来自 User 类的 3-4 个属性,并且说 User 有 10 个属性。什么时候可以传递整个对象?
标签: design-patterns language-agnostic terminology anti-patterns