Scala系统学习(一):Scala概述

Scala是可扩展语言的缩写,是一种混合功能编程语言。 它由Martin Odersky创建。 Scala顺利整合面向对象和函数式语言的功能。 Scala被编译后在Java虚拟机上运行。 许多现有公司依靠Java进行关键业务应用转向或正在转向Scala,以提高其开发生产力,应用程序可扩展性和整体可靠性。

在这里,我们提出了一些要点,说明为什么Scala成为应用程序开发人员的首选。

  • Scala是面向对象语言
    Scala是一种纯粹的面向对象语言,每一个值都是一个对象。 对象的类型和行为由类和特征描述,这将在后面的章节中进行说明。
    类通过子类化和基于灵活的基于混合组合机制进行扩展,作为多重继承的干净替代。
  • Scala是函数式编程语言
    Scala也是一种函数式语言,每个函数都是一个值,每个值都是一个对象,所以每个函数都是一个对象。
    Scala提供了一个轻量级的语法来定义匿名函数,它支持高阶函数,它允许函数嵌套,并支持currying,这些概念将在后续章节中进行说明。
  • Scala是静态类型的
    Scala与其他静态类型语言(C,Pascal,Rust等)不同,它不提供冗余类型的信息。 在大多数情况下,您不需要指定类型,当然减少了不必的重复。
  • Scala运行在JVM上
    Scala代码被编译成由Java虚拟机(JVM)执行的Java字节代码,这意味着Scala和Java具有通用的运行时平台。因此,可以轻松地从Java迁移到Scala。
    Scala编译器将Scala代码编译成Java字节代码,然后可以通过scala命令执行。scala命令类似于java命令,因为它执行编译Scala代码。
  • Scala可以执行Java代码
    Scala能够使用Java SDK的所有类以及自定义Java类,或您最喜欢的Java开源项目。
  • Scala可以做并发和同步处理
    Scala允许您以有效的方式表达一般的编程模式。它减少了线路数量,并帮助程序员以类型安全的方式进行编码。它允许您以不变的方式编写代码,这使得应用并发和并行性(Synchronize)变得容易。

Scala与Java

Scala具有与Java完全不同的一组功能,其中的一些如下 :

  • 所有类型都是对象
  • 类型推断
  • 嵌套函数
  • 函数是对象
  • 域特定语言(DSL)支持
  • 性状
  • 闭包
  • 并发支持灵感来自Erlang

Scala Web框架

Scala在所有地方都被使用,重要的是在企业Web应用程序中使用。下面列出一些最受欢迎的Scala Web框架 :

原文地址:https://www.cnblogs.com/itboys/p/9295306.html

时间: 2024-08-01 13:55:34

Scala系统学习(一):Scala概述的相关文章

Scala系统学习(二):Scala开发环境安装配置

Scala可以安装在任何基于UNIX/Linux或基于Windows的系统上.在您的机器上开始安装Scala之前,必须在计算机上安装Java 1.8或更高版本. 下面请按照以下步骤安装Scala. 步骤1:安装Java 首先,您需要在系统上安装Java软件开发工具包(SDK).要验证是否已经安装了Java,请根据您正在使用的操作系统平台,执行以下两个命令 - 对于Linux/Unix系统 - $java –version 对于Windows系统(打开命令提示符) - C:\Users\Admin

Scala系统学习(三):Scala基础语法

如果您熟悉Java语言语法和编程,那么学习Scala将会很容易.Scala和Java之间最大的句法差异在于行结束字符的分号(;) 是可选的. 当编写Scala程序时,它可以被定义为通过调用彼此的方法进行通信的对象的集合.现在我们简单地看一下类,对象,方法和实例变量的含义. 对象 - 对象有状态和行为.一个对象是类的一个实例.例如 - 狗有状态:颜色,名称,品种,它行为有:摇摆,吠叫和吃东西. 类 - 可以将类定义为描述与该类相关的行为/状态的模板/蓝图. 方法 - 一个方法基本上是一种行为.一个

Scala系统学习(四):Scala变量

变量是保存存储值的内存位置的名称.这意味着当创建变量时,可以在内存中保留一些空间. 根据变量的数据类型,编译器分配内存并决定可以存储在预留内存中的内容.因此,通过为变量分配不同的数据类型,可以在这些变量中存储整数,小数或字符. 变量声明 Scala具有用于声明变量的不同语法.它们可以被定义为值,即常数或变量. 这里,myVar使用关键字var声明. 它是一个可以改变值的变量,这称为可变变量. 以下是使用var关键字定义变量的语法 - 语法 var myVar : String = "Foo&qu

Scala系统学习(四):Scala数据类型

Scala与Java具有相同的数据类型,具有相同的内存占用和精度.以下是提供Scala中可用的所有数据类型的详细信息的表格: 序号 数据类型 说明 1 Byte 8位有符号值,范围从-128至127 2 Short 16位有符号值,范围从-32768至32767 3 Int 32位有符号值,范围从-2147483648至2147483647 4 Long 64位有符号值,范围从-9223372036854775808至9223372036854775807 5 Float 32位IEEE 754

Scala学习(一)--Scala基础学习

Scala基础学习 摘要: 在篇主要内容:如何把Scala当做工业级的便携计算器使用,如何用Scala处理数字以及其他算术操作.在这个过程中,我们将介绍一系列重要的Scala概念和惯用法.同时你还将学到作为初学者如何浏览Scaladoc文档 1. 使用Scala解释器 2. 用var和val定义变量 3. 数值类型 4. 使用操作符和函数 5. 浏览Scaladoc Scala解释器 启动Scala解释器的步骤如下: 安装Scala 确保scala/bin目录位于系统PATH中 在你的操作系统中

Scala 入门学习

Scala 学习 一:环境配置 Scale 官网地址: http://scala-ide.org/download/sdk.html 1: 安装Java JDK 2:安装Scala 3:安装Scala 集成IDE 二: 开始Scala 学习旅程 Hello Scala Demo 1: 新建 Scala 工程,并新建 HelloScala.scala 文件 package com.scala.main /** * Scala 测试1 * * @author zhanghuan * * @creat

大数据Spark学习:Scala基础第一课

计划: 阶段1: 精通Spark内核 阶段2: 精通千万级的项目 阶段3: 机器学习 JAVA本身不是伟大的语言,伟大的是JVM,构件分布式平台什么的,依赖的是JVM,不一定要JAVA语言 可认为Scala是JAVA的升级语言,JAVA是支持面向对象的语言,而非纯面向对象的语言.Scala是一切皆对象, 是纯面向对象语言.面向对象结合函数式编程. 不可变变量声明val result = 10+2  不可再次赋值,分布式数据的时候,传输数据.校验数据等不想改变这个数据 可变变量var name =

大数据学习:Scala面向对象和Spark一些代码读和问

画外音: Spark对面向对象的支持是非常完美的 主题: 1.简单的类: 2.重写getter.setter方法: 3.利用其它方法来控制外部对值的控制: 4. private[this]: 5.构造器以及构造器相关: 直接代码见真章: ==========最简单的类============ scala> class HiScala{ | private var name = "Spark" | def sayName(){println(name)} | def getName

在CentOS7系统上执行Scala脚本

在类Unix系统上,可以在scala文件中开头第一行指定脚本的解释程序.如下例: Script.scala #!/usr/bin/env scala println("Hello" + args(0)) 先输入chmod +x Script.scala,确保对Script.scala文件有执行权限.然后执行此文件,在命令行上输入./Script.scala Buddy   (说明:此处,Buddy是传给脚本的参数) 输出如下: Hello Buddy