【Scala---01】Scala『 Scala简介 | 函数式编程简介 | Scala VS Java | 安装与部署』

文章目录

  • [1. Scala简介](#1. Scala简介)
  • [2. 函数式编程简介](#2. 函数式编程简介)
  • [3. Scala VS Java](#3. Scala VS Java)
  • [4. 安装与部署](#4. 安装与部署)

1. Scala简介

Scala是由于Spark的流行而兴起的。Scala是高级语言,Scala底层使用的是Java,可以看做是对Java的进一步封装,更加简洁,代码量是Java的一半。 因此,Scala是运行在JVM上的,可以跨平台,可以直接在Scala中编写Java代码。

现在大数据生态的语言:

2. 函数式编程简介

  1. Scala是面向函数式编程,无论做什么要明确是什么函数。具体而言,就是 函数可以作为参数传递给另一个函数,也可以把函数作为返回值返回出来。
  2. 函数式编程没有副作用,即变量一经赋值,就不变。
  3. 引用透明。指函数的运行不依赖于外部变量或状态,只依赖于输入参数,任何时候只要输入的参数相同,那么引用函数得到的返回值永远相同。Java中查看一个函数功能,往往要查引用的类,类中还有引用类...,需要一直点进去,引用不够透明。

3. Scala VS Java

  1. Java是面向对象的,Scala是面向函数式编程的,这是两者最大的区别。 Scala的函数式编程是借鉴的Python优点,为什么不使用Python开发
  2. Java是面向对象的用于解决通用问题,Scala是专注于解决数据统一计算。抽象来说,无论解什么数学题,首先得学好加减乘除,而解决线性代数就得学好矩阵相关公式,学高等数学就得学好微积分相关公式,但矩阵与微积分本质上还是由加减乘除组合而来的,只不过是矩阵相关方式和微积分相关方式是已解决的封装好的公式,直接使用就行。具体而言,就是Scala比Java多一些数据统计的方法,比如 group by等等。
  3. Scala也拥有Java高并发、可移植、运行快的特点。一次编译成class文件,多次运行。

4. 安装与部署

  1. 生产环境Linux的部署
  2. 编辑环境的部署
  3. 项目部署
相关推荐
考虑考虑1 天前
JDK26中的Map.ofLazy
java·后端·java ee
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天1 天前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源