如何停止使用“ Manager”后缀命名Java类

在Java应用程序中到处可见的地方都有名为SomethingManager的类。 帐户缓存具有一个AccountCacheManager。 应用程序属性具有ApplicationPropertiesManager。 用户事务由UserTransactionManager完成。

您可能在某个时候以这种方式命名了一个类。

请去改变它。

What's wrong with "Manager?"

经理是没有意义的后缀。 当然,您可能会争辩说我们需要一件事来管理另一件事,但是当您这么说时,您是什么意思? 您要为代码提供经理吗? 这是工作场所吗? 您的应用程序中的对象是否需要老板?

Lumbergh from Office Space

How to change it?

每当我在类名称中看到“经理”时,几乎总是多余的。 我最近看到了一个管理其他组件生命周期的类。 可以预见的是它以“ LifeCycleManager”后缀命名。 当然,在这种情况下,我们需要为课程命名经理, 对? 毕竟管理生命周期,这就是我们在现实世界中实际所说的?

没有! 错误!

这个班有初始化()和停()方法。 我们假设它被称为“托管”类MyComponent。 It's actually clearer和more readable to just call the "manager" class, MyComponentLifeCycle。 被“托管”的代码变为MyComponentLifeCycle.初始化()和MyComponentLifeCycle.停(). I can initialize or stop the life cycle directly,和when I do, I say what I mean和I mean what I say. I don't ask a manager to do it, I just do it.

Shia LeBouf just do it

这个简单的想法适用于大多数用例,在这些用例中,我已经看到了经理类的后缀。 刚才,我打开了一个代码库,发现了一个Connection经理类。 它公开的一些方法是getConnection(),配置(),and 关(). Setting aside the fact that this class probably could be refactored into some other object that makes more sense,all its really doing is holding a javax.sql.DataSource and providing some utility code around it,with the ultimate goal of providing a valid java.sql.Connection到应用程序。

不能只叫这堂课吗数据库连接并改变它getConnection()方法(返回一个java.sql.Connection顺便说一下得到()或许asSqlConnection()? 现在,而不是ConnectionManager.getConnection()(顺便说一句,这也是完全多余的)数据库连接.得到()。 后来你打电话数据库连接.close()。 无需“经理”。

No Managers!

如您所见,干净的代码应该没有管理器。 这是多余且不必要的。 它没有告诉您有关该类实际做什么的任何信息。

我的目标是经理灭绝。 谁和我在一起?

Protest

from: https://dev.to//scottshipp/how-to-stop-naming-java-classes-with-the-manager-suffix-48la

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值