在java中分解,什么时候足够了?

ava*_*arX 5 java decomposition

我是第一年的计算机科学专业的学生.我们目前正在用java编程,我经常尝试将我的程序分解为命名良好的方法,以便我的主方法逻辑可以尽可能接近伪代码.

我发现的问题是,我经常写这么多小的私有方法,我觉得我可能会过度使用它.在决定是否进一步分解问题时,是否有任何好的经验法则或风格考虑因素需要考虑?

jal*_*alf 13

经验法则是单一责任原则.每个代码单元应该只负责件事.这适用于方法和类.如果你可以把一个简单,简洁的名字各有什么你许多民营方法,那么它的罚款.如果你只能将它描述为一个更大的操作的"一部分",那么它可能不应该是一个单独的方法.

但是从你的问题来看,听起来你已经做得对了.


Ben*_*ton 10

大多数新开发人员都采用其他方式 - 具有许多职责的巨大功能.你的情况比这更好!

创造许多小方法并没有太大的缺点,并且有很多好处!

简短的方法是:

  • 更容易重用
  • 更容易测试
  • 更易于阅读和理解
  • 更容易调试

考虑到这一点,我建议你无情地将重复重构为小方法.您的IDE将为您提供一个提取方法重构,以加快速度.

我也认为你想要一种可读的伪代码的目的通常是一个好的.您看到的许多代码都不会像这样编写,但它确实有助于提高可读性以及"代码是文档"的概念.

有些人会谈论方法调用的性能开销,但只有在极少数情况下才会引起关注.

编辑 - 其他海报提到单一责任原则.虽然这是一个很好的指导方针,但我个人认为它比这更进一步.甚至一些具有明确定义的责任的代码片段也可能被分解以用于重用和可读性.