你们中的一些人肯定已经处理过这个问题。当程序员对 OO 过于执着而忘记了性能和拥有数据库时,往往会发生这种情况。
例如,假设我们有一个电子邮件表,它们需要由该程序发送。在启动时,它会查找需要发送的任何内容,如下所示:
Emails = find_every_damn_email_in_the_database();
FOR Email in Emails
IF !Email.IsSent() THEN Email.Send()
从不要重复自己的角度来看,这是一件好事,但有时这是不可避免的,应该是:
Emails = find_unsent_emails();
FOR Email in Emails
Email.Send()
这个有名字吗?