scala语言学习之环境安装

author author     2022-10-15     285

关键词:

==> Scala语言简介

        --> Scala编程语言抓住了很多开发者的眼球。如果你粗略浏览Scala的网站,你会觉得Scala是一种纯粹的面向对象编程语言,而又无缝地结合了命令式编程和函数式编程风格

        --> 不太久之前编程语言还可以毫无疑意地归类成“命令式”或者“函数式”或者“面向对象”。Scala代表了一个新的语言品种,它抹平了这些人为划分的界限。

==> Scala有几项关键特性表明了它的面向对象的本质

        --> Scala中的每个值都是一个对象,包括基本数据类型(即布尔值、数字等)在内,连函数也是对象。

        --> 类可以被子类化,而且Scala还提供了基于mixin的组合(mixin-based composition)

        --> 与只支持单继承的语言相比,Scala具有更广泛意义上的类重用。Scala允许定义新类的时候重用“一个类中新增的成员定义(即相较于其父类的差异之处)”。Scala称之为mixin类组合。

        --> Scala还包含了若干函数式语言的关键概念,包括高阶函数(Higher-Order Function)、局部套用(Currying)、嵌套函数(Nested Function)、序列解读(Sequence Comprehensions)等等。

        --> Scala是静态类型的,这就允许它提供泛型类、内部类、甚至多态方法(Polymorphic Method)。另外值得一提的是,Scala被特意设计成能够与Java和.NET互操作。Scala当前版本还不能在.NET上运行(虽然上一版可以-_-b),但按照计划将来可以在.NET上运行。

        --> Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码)。你可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。


==> 为什么我要使用Scala?

        --> Scala的设计始终贯穿着一个理念:创造一种更好地支持组件的语言。(《The Scala Programming Language》,Donna Malayeri)也就是说软件应该由可重用的部件构造而成。Scala旨在提供一种编程语言,能够统一和一般化分别来自面向对象和函数式两种不同风格的关键概念


==> Scala得以提供一些出众的特性

        --> 面向对象风格

        --> 函数式风格

        --> 更高层的并发模型

        --> Scala把Erlang风格的基于actor的并发带进了JVM。开发者可以利用Scala的actor模型在JVM上设计具伸缩性的并发应用程序,它会自动获得多核心处理器带来的优势,而不必依照复杂的Java线程模型来编写程序。

        --> 轻量级的函数语法

        --> 高阶

        --> 嵌套

        --> 局部套用(Currying)

        -->  匿名

        --> 与XML集成

        --> 可在Scala程序中直接书写XML

        --> 可将XML转换成Scala类

        --> 与Java无缝地互操作


==> Scala 是一种多范式的编程语言,设计意图是要集成面向对象编程和函数式编程的各种特性


==> 技巧

        --> 

        --> 不要陷入C++一样的、不断膨胀的问题里,留下太多的选择,且没有清晰的最佳实践。这导致每个人都在选择不同的子集。要提供适应的指导。

        --> 记住,反对不良的设计功能与增加新功能同等重要——这很残酷。

        --> 考虑拆分语言为产生环境创建可行的标准。为学术世界节省成本是一个明智的选择。迎合企业的需要,获得更大的采用。

        --> 库的编写者应该看看Java API,确认是否应该有功能调用或结构化功能,为了更好的阅读。不要为了流动性在跳跃太大来与Ruby竞争。

        --> 最后,当人们提出的建设性的批评时,不要感到失望。如果同样的报怨不断出现,那就说明应该重视一下。


==> 环境部署

        --> 由于 Scala 是基于 JVM 运行的,所以需要配置 JAVA环境,这里不在复述

        --> 安装Scala:下载  http://www.scala-lang.org/download/

                 注意:版本跟Spark的Scala版本一致

                    scala-2.11.8.zip


        --> Scala的运行环境(开发工具)

        --> 命令行:REPL

                --- 进入: scala

                --- 退出::quit

                --- (*) paste 模式: 相当于vi编辑器

                --- 进入: :paste

                --- 退出: ctrl+D

        --> IDEA

                --- 默认:没有Scala的环境

                --- 需要安装插件:SBT(需要联网,有点慢)

(3)Scala IDE:基于Eclipse


        --> 参考此链接:http://blog.csdn.net/yuanguangyu1221/article/details/50889522


scala语言简介及其环境安装

scala语言简介及其环境安装 简介:1.运行在JVM上,兼容java语言  Scala的代码,都需要经过编译为字节码,然后交由Java虚拟机来运行。所以Scala和Java是可以无缝互操作的。Scala可以任意调用Java的代码。2.当面向对象遇到了函... 查看详情

scala语言学习之语言基础

注:--------scala 中的任何数据都是对象       --------Scala 可以对数据类型进行自动推导,所以定义变量时可省去数据类型==> 数据类型    --> 数值类型     查看详情

scala语言学习之泛型

==> 泛型类        --->T 可以代表任意类型class Person[T]{  private var name:T = _  def setName(name:T)&nbs 查看详情

大数据学习之scala语言基本语法学习36

一:scala简介官网:https://www.scala-lang.org/Scala语言很强大,集成了面向对象和函数式编程的特点。运行在JVM(jdk)。大数据中为什么学习scala?spark是scala语言编写。python写spark挺好的java写spark很糟糕(代码实在是太多了)scala写spark很... 查看详情

spark学习之scala编程

 一、Scala语言基础1、Scala语言简介Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台(Java虚拟机),并兼容现有的Java程序。学习Scala编程语言,为后续学习Spark... 查看详情

scala安装和开发环境配置教程(代码片段)

开发环境:jdk1.8+IntelliJIDEA2018Scala2.11.121、Scala语言概述Scala语言概述:Scala语言是一门以Java虚拟机为运行环境,支持面向对象和函数式编程的静态语言,java语言是面向对象的,所以代码写起来就会相对比较... 查看详情

java学习之环境配置

1、学习每门语言之前都会为之配置环境,也就是运行程序所需要的环境。2、运行Java程序就要安装Java的环境,Java的特点是跨平台,即:可以在不同操作系统下运行,Linux、windows、mac等。只要在不同的操作系统下安装不同版本的... 查看详情

idea安装scala搭建项目环境

scala下载地址:https://www.scala-lang.org/download/scala插件离线下载地址:https://plugins.jetbrains.com/plugin/1347-scala注意点:IDEA不直接支持Scala语言开发,要下载对应的scala的插件才可以scala的插件版本必须要与IDEA的版本一直,不然可能会出... 查看详情

大数据学习之scala语言的高级特性42

1、什么是泛型类和Java或者C++一样,类和特质可以带类型参数。在Scala中,使用方括号来定义类型参数测试程序: 2、什么是泛型函数函数和方法也可以带类型参数。和泛型类一样,我们需要把类型参数放在方法名之后。注意... 查看详情

scala安装和开发环境配置教程(代码片段)

开发环境:jdk1.8+IntelliJIDEA2018Scala2.11.121、Scala语言概述Scala语言概述:Scala语言是一门以Java虚拟机为运行环境,支持面向对象和函数式编程的静态语言,java语言是面向对象的,所以代码写起来就会相对比较... 查看详情

scala学习之函数式风格编程(代码片段)

FUNCTIONALPROGRAMMINGhttps://docs.scala-lang.org/overviews/scala-book/functional-programming.htmlScala允许您以面向对象编程(OOP)风格、函数式编程(FP)风格甚至混合风格编写代码,结合使用这两种方法。本书假设您是从Java、C++或C#等OOP语言来... 查看详情

scala基本介绍

目录Scala基本介绍什么是Scala为什么要学Scala特点Scala环境搭建Scala开发工具ideaIDEA中Scala插件的安装IDEA中开发Scala项目Scala基本介绍什么是Scalascala(ScalableLanguage)是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数... 查看详情

windows环境安装scala详情

...步学习Spark,必须先学习Scala编程语言。首先开始Scala环境搭建。温馨提示:本文是基于Windows11安装Scala2.13.1版本第一步:确保本机已经正确安装JDK1.8环境第二步:Scala官网下载我们所属scala版本文件。Scala官网地址&#... 查看详情

scala学习之scala快速入门(代码片段)

文章目录Scala的“味道”Overview概述Hello,worldTheScalaREPLTwotypesofvariablesDeclaringvariabletypesControlstructuresif/elsematchexpressionstry/catchforloopsandexpressionswhileanddo/whileClassesScalamethodsTraits 查看详情

scala学习之scala集合类(代码片段)

文章目录SCALACOLLECTIONSThemainScalacollectionsclassesTHEARRAYBUFFERCLASSMorewaystoworkwith`ArrayBuffer`THELISTCLASSCreatingListsAddingelementstoaListHowtorememberthemethodnamesHowtoloopoverlistsA 查看详情

学习笔记ionic学习之环境搭建

初学ionic,后面会把学习的点滴和踩到坑全部记录下来1.环境安装node.js官网地址:https://nodejs.org/en/下载安装包安装。自己记住自己的安装路径哦安装完成后我们测试一下方法运行-cmd 在命令窗口输入node-v npm-v 这样说明... 查看详情

scala学习之scala中的类(代码片段)

文章目录SCALACLASSESBasicclassconstructor`val`makesfieldsread-onlyClassconstructorsOtherScalaclassexamplesAUXILIARYCLASSCONSTRUCTORSNotesSUPPLYINGDEFAULTVALUESFORCONSTRUCTORPARAMETERSBenefitsBonus 查看详情

scala学习记录——1.初识scala语言

...​​3.练习​​1.安装Scala在网上安装好scala后,配置相应环境变量,并在cmd页面输入“scala”后,会显示欢迎信息,并进入scalarepl界面​​:help​​:获取帮助​​println("a")​​:在屏幕上输出一个a,原理是向JVM的stdout流输出一... 查看详情