是否有人在愤怒中使用Scala(对Java程序员有什么建议)?[已关闭]

2022-09-02 12:42:24

自从加入 Smalltalk 以来,我已经做了 10 多年的 Java 程序员。在我看来,下一个大语言很可能是那些在无处不在的Java虚拟机上运行的语言。我想利用Scala(以及其他语言)的一些功能 - 类层次结构,闭包,类型推断的语句,因为它将允许我编写更简洁明了(我希望)的代码。离小话更近一点!case

所有在Java中都是第二天性的东西:

  • 构建方式ant
  • 将应用程序/库部署到逻辑中jar
  • 出色的 IDE 工具支持
  • 编写GUI(或者让Swing GUI通过某种远程处理与它对话?
  • 第三方库/框架
  • 配置(属性等)XMLSpring
  • 数据库驱动程序等

我担心玩一些宠物项目和实际上在工作场所愤怒地使用它之间的区别有点太大了。

  1. 有没有人实现过这样的飞跃?
  2. 值得吗?
  3. 你学到了什么教训?

(显然,人们正在使用Scala - 但是有人在构建实际的企业应用程序吗


答案 1

我在我们现有的Java基础架构上使用Scala来查询和操作大型xml文档。使用标准的Java xml库是不可能的,或者不那么容易。

我很想用它来计算投资组合性能,但已经完成了Java版本。Scala版本更容易维护,因为它更容易将公式直接转换为代码。

另一个可以潜入Scala的领域是多线程。对此没有真正的经验,但在Scala中似乎更容易。

关键是,现在不要试图把它看作是Java的替代品,而是在你可以利用它的地方使用它,就像你现有的Java代码一样。

我将Intellij与Scala插件一起使用作为IDE,但它还没有出现。它可以与maven插件和控制台结合使用。

我也是一名Smalltalk程序员,喜欢能够在Scala中使用代码块。与Java相比,代码较少,但仍然不如Smalltalk代码可读性。

顺便说一句,由于Seaside框架,smalltalk社区再次增长,因此您可能希望返回

我学到或更好地理解的东西:

  • 构造函数的使用
  • 不变的概念
  • 使用列表和递归
  • 一般函数式编程

所以,是的,我认为这是值得的。


答案 2

推荐