如何解决使用后缀“ Template”作为模板方法模式的类名称是否是反模式?
我正在使用模板方法模式。
我的抽象类具有处理迭代和记录的基本方法。
像这样:
abstract public class ImportingTemplate implements Importing{
public void importArticles(List<Long> articleIds)
{
for(long articleId : articleIds)
{
Log log = importArticle(articleId);
logService.save(log);
}
}
protected abstract Log importArticle(long articleId);
}
我不能使用“导入”,因为它是界面的名称。
我想不出比在后缀上使用“模板”更好的名称。
使用后缀“ Template”作为“模板方法模式”的类名是否是反模式?
使用“ ImportingContext”是否更好
解决方法
一个明智的约定是对接口(和函数类型)使用 agent名词。在您的情况下,接口名称将为 Importer 。但是,您可能无法更改接口的名称。
如果抽象类的子类不打算具有状态(实例变量),则可以使用质量名词,例如 ArticleImport 。毕竟,该类处理文章,因此在名称中使用 Article 一词是合理的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。