【发布时间】:2019-03-28 06:04:12
【问题描述】:
只是一个先驱,我来自 Java 背景,对 Scala 还很陌生。随着我在 Scala 中进行更多开发并尝试变得更加面向 FP,我意识到我可以制作几乎所有的代码:函数(甚至方法?)包含在 Objects 中(在需要的地方添加一些案例类)。在那种情况下 - 常规课程有什么用吗?
【问题讨论】:
-
恕我直言,这个问题将非常基于意见,但我不会标记它,看看其他人的想法。无论如何,我的观点 (讽刺意味很大) 关于这一点,它们仍然有用,具体取决于您想要什么。案例类将通过值(这很棒) 为您提供身份,但如果您需要引用相等(出于某种原因),那么拥有常规类很有用。此外,案例类会生成大量样板代码,这些代码在需要时非常有用,但如果在任何地方使用,可能会使字节码太大。最后,隐式类和值类与普通类一样工作得很好。
-
如果您有 Java 背景,那么类比可能会有所帮助。你会如何回答这个问题:“有什么理由在 Java 中使用非静态方法吗?”
-
对象没有与类相同级别的支持,例如:依赖注入对对象有自己的约束stackoverflow.com/questions/37274533/inject-in-scala-object
标签: scala functional-programming