scala 系列之 01scala 概述和开发环境搭建

教程 潘牛 ⋅ 于 2021-06-10 19:38:43 ⋅ 1797 阅读

1 scala介绍

file

​ Scala是一门现代的多范式编程语言,平滑地集成了面向对象和函数式语言的特性,旨在以简练、优雅的方式来表达常用编程模式。

​ Scala的设计吸收借鉴了许多种编程语言的思想,只有很少量特点是Scala自己独有的。

​ Scala语言的名称来自于“可伸展的语言”,从写个小脚本到建立个大系统的编程任务均可胜任。

​ 大教堂:几近完美的建筑物,花费很长时间建设,而一旦建成了就长时间保持不变;

​ 集市:每天都会被集市中的人调整和扩展。

​ Scala就像集市一样,每天都在不断地被使用者扩展。

​ 它没有提供“完美齐全”语言中可能需要的所有东西,而是把制作这些东西的工具交给使用者。

​ Scala运行于Java平台(JVM,Java 虚拟机)上,并兼容现有的Java程序,Scala代码可以调用Java方法,访问Java字段,继承Java类和实现Java接口。

​ 在面向对象方面,Scala是一门非常纯粹的面向对象编程语言,也就是说,在Scala中,每个值都是对象,每个操作都是方法调用。

什么是函数式编程?

​ 函数式编程中的函数,是指数学中的函数,即自变量的映射。也就是说一个函数的值仅决定于函数参数的值,不依赖其他状态。比如sqrt(x)函数计算x的平方根,只要x不变,不论什么时候调用,调用几次,值都是不变的。

​ 函数式编程有如下特点:

​ 1)函数是一等公民。可以把函数当做参数传给另一个函数。也可以把函数当做返回值返回出来,也可以在一个函数体里定义一个函数。

​ 2)纯函数式编程,没有副作用。即变量一经赋值,就不可变。

​ 3)引用透明性。指的是函数的运行不依赖于外部变量或"状态",只依赖于输入的参数,任何时候只要参数相同,引用函数所得到的返回值总是相同的。

​ 如:sqrt(2) 永远等于 4。

file

Scala具有以下突出的优点:

​ ◇ Scala具备强大的并发性,支持函数式编程,可以更好地支持分布式系统;

​ ◇ Scala语法简洁,Scala程序保守估计是同样Java程序的一半左右;并且能提供优雅的API;

​ ◇ Scala兼容Java,运行速度快,现有的很多大数据框架使用Scala开发,比如spark,kafka,flink;

现在大数据生态系统的语言支持:

hadoop(java)

hive(java)

hbase(java)

kafka(scala)

spark(scala)

Flink(java)

2 scala及idea安装与配置

file

2.1 安装 scala

安装 scala-2.11.8.msi,windows会自动将scala加到path中

file

查看版本

file

2.2 安装和配置idea

官方下载地址: https://www.jetbrains.com/zh-cn/idea/download/#section=windows

file

file

file

file

file

file

双击 “idea快捷方式”图标

file

file

file

进入主页面

file

破解idea参考 《idea破解教程.mht》,破解步骤笔记不体现,破解后可无限30重试使用。

2.3 安装scala插件

idea 2021版本,自带scala插件,无需安装。

进入设置界面查看

file

2.4 安装 maven插件

idea 2021版本,自带 maven 插件,无需安装。

file

2.5 创建maven工程

选择maven工程,配置jdk,点next

file

file

点击 finish 完成工程创建。

2.6 修改idea 主题样式和字体样式

修改idea 主题样式

file

修改字体样式

file

2.7 配置maven

file

2.8 创建scala代码目录

file

新建的目录,只是一个纯粹的目录,还需要修改成代码目录,修改方式如下

1)右键要修改的目录 → Mark directory as → Sources Root

file

2)File → Project Structure... → Modules

或 右键工程 → Open Module Settings

file

2.9 将maven工程加入 scala SDK

maven工程默认是java,需要加入 scala SDK。否则工程不能创建scala的类

file

首次时,需要点击 “Browse”选择离线scala sdk。

file

file

2.10 scala版的helloword

file

file

file

2.11 idea上maven的使用

打开 maven projects 视图

view → Tool Windows → Maven Projects

或 view → Tool Buttons

file

清理target

file

当前没有配置assembly 插件,如果配置了assembly插件,可以点击 “刷新”按钮后,看到assembly插件,后续打包就用这个插件。

file

2.12 怎么在idea查看源码

    <dependencies>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.11.8</version>
        </dependency>
    </dependencies>

2.13 修改快捷键

file

可根据自己喜好更改。

版权声明:原创作品,允许转载,转载时务必以超链接的形式表明出处和作者信息。否则将追究法律责任。来自海汼部落-潘牛,http://hainiubl.com/topics/75671
回复数量: 0
    暂无评论~~
    • 请注意单词拼写,以及中英文排版,参考此页
    • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
    • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
    • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
    • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
    Ctrl+Enter