加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

开发人员学习如何充分利用Scala的Java生态系统和语言的哪些部分

发布时间:2020-12-16 09:40:37 所属栏目:安全 来源:网络整理
导读:用于学习Scala的许多可用资源假定了Java中的一些背景。对于那些试图用Java背景学习Scala的人来说,这可能是很有挑战性的。 一个新的Scala开发人员在学习语言时应该知道什么是Java? 例如,知道什么是CLASSPATH是有用的,什么是java命令行选项等等… 解决方法
用于学习Scala的许多可用资源假定了Java中的一些背景。对于那些试图用Java背景学习Scala的人来说,这可能是很有挑战性的。

一个新的Scala开发人员在学习语言时应该知道什么是Java?

例如,知道什么是CLASSPATH是有用的,什么是java命令行选项等等…

解决方法

这是一个非常好的问题!我从来没有想过人们学习Java,所以他们更容易学习Scala …

除了循环等基础知识外,学习Java泛型可以真正有用。与Java泛型相比,Scala等价物更有效(并且难以理解)。您可能想要找出Java泛型的极限,然后在哪种情况下,Scala的类型构造函数可用于克服这些限制。在更基础的层面,重要的是要知道为什么泛型是必需的,以及Java是一种强类型的语言。

Java允许您为一个类拥有多个构造函数。当您学习Scala时,这种知识将无济于事,因为Scala有另一种方法可以让您提供几种创建课程实例的方法。所以,你不要深入了解这个Java概念。

以下是Java和Scala之间有很大差异的概念。所以,如果你学习Java的概念,然后再学习在Scala中学习同等的东西,那么你应该意识到,Scala的等价物与Java版本的差别很大,典型的Java开发者将会难以适应Scala方式的思考尽管如此,它通常有助于首先习惯Java的方式,因为它通常更简单,更容易学习。我个人更喜欢将Java作为入门课程,Scala是专业版。

> Java可变集合概念与Scala可变/不可变分化
>静态方法(Java)与单例对象(Scala)
> for循环
> Java返回语句与Scala功能样式(“每个表达式返回一个值”)
> Java对“无价值”的使用与Scala的更明确的选项类型相比较
>进口
> Java的转换与Scala的匹配

这里有一些可以从Java标准库中使用的东西,即使您在Scala中开发:

> IO
> GUI(Scala有一个Swing的包装,但嘿)
> URL,URIs,文件
>日期
>计时器

最后,Scala的一些功能在Java或Java标准库中没有直接的等价物:

>运算符重载
隐含和隐含的转换
>多个参数列表/ currying
>匿名函数/函数作为值
演员

> Scala模式匹配(其中岩石)
特质
>类型推断
>理解
>令人敬畏的收藏操作,如折叠或地图

当然,所有的列表都是不完整的。这只是我对什么是重要的看法。我希望它有帮助。

而且,顺便说一句:你应该知道类路径和其他JVM基础知识。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读