大数据课程J1——Scala的概述

文章作者邮箱:[email protected]              地址:广东惠州

 ▲ 本章节目的

⚪ 了解Scala的特点;

⚪ 了解Scala的开发环境搭建;

⚪ 了解Scala的开发工具;

一、概述

1.简介

Scala既是面向对象的语言,也是面向函数的语言。scala可以为你在做大量代码重用和扩展是提供优雅的层次结构,并可以通过高阶函数来实现这样的目标。(高阶函数是函数式编程里的特性之一,允许函数作为参数传递,也允许函数作为返回值来返回)

Martin是EPFL(瑞士领先的技术大学,洛桑联邦理工学院)编程研究组的教授。他在整个职业生涯中一直不断追求着一个目标:让写程序这样一个基础工作变得高效、简单、且令人愉悦。

他可能比世界上任何一个人写过更多的Java和Scala代码。他编写了javac,这是目前大部分Java程序员所使用的编译器。他也编写了Scala编译器scalac,可谓是Scala社区飞速发展的基石。

2. Scala语言的特点

Scala并不适于编程的初级课程。相反,它是为专业程序员定制的强力语言。

1. 它是一门现代编程语言,作者是Martin Odersky(javac之父),受到Java、Ruby、Smalltalk、ML、Haskell、Erlang等语言的影响。

2. 它即是一门面向对象(OOP)语言,每个变量都是一个对象,每个“操作符”都是方法。scala语言在面向对象的方面,要比java更彻底。

它同时也是一门函数式编程(FP)语言,可以将函数作为参数传递。你可以用OOP、FP,或者两者结合的方式编写代码。

3. Scala代码通过scalac编译成.class文件,然后在JVM上运行,可以无缝使用已有的丰富的Java类库。即Scala的代码会编译成字节码,运行在Java虚拟机(JVM)上。

4. 接触语言的第一天你就能编出有趣的程序,但是这门语言很深奥,随着学习的深入,你会发现更新、更好的编写代码的方式。Scala会改变你对编程的看法。针对同一任务,可以有很多种不同的实现方式,并且可读性以及性能都有不一样的体现。

3. scala编程的一个示例:

Array(1,2,3,4) 

如何遍历数组中的元素,你应该这么做:

for (i <- Array(1,2,3,4)) println(i)

Array(1,2,3,4).foreach{print(_)}

如果尝试将这些元素转换为新的集合,应该使用for/yield表达式或者map方法:

scala> for (i <- Array(1,2,3)) yield i * 2 

res0: Array[Int] = Array(2, 4, 6)

scala> Array(1,2,3).map(_ * 2)

res1: Array[Int] = Array(2, 4, 6)

比如过滤出一个集合中元素小于4的集合,你可以使用filter方法:

scala> val nums = List(1,2,3,4,5).filter(_ < 4)

res2: nums: List[Int] = List(1, 2, 3)

二、Scala Windows运行环境配置及使用

1. 实现步骤:

1. 双击运行安装。

2. 添加scala安装目录的bin目录路径到系统环境变量中。 

3. 通过cmd命令窗口,输入scala 。

2. 交互模式

可以通过命令行直接输入scala命令,比如:

 

 3. 编译模式

也可以先编写  ***.scala文件,通过执行文件来执行命令,比如:

先在e盘下创建一个hello.scala文件。

print("hello scala");

然后通过cmd执行:

也可以先生成 .scala文件,再编译生成  .class 文件,再执行。

在e盘下,创建demo01.scala文件,内容如下:

object Person{

def main(args: Array[String]): Unit = {

println("hello scala hello world~")

}

}

在e盘路径下进入cmd命令窗口。

然后执行:scalac demo01.scala

执行完后会发现在e盘下多出了对应的class文件。

 

调用执行:scala Person 

4. 使用IDE来开发Scala

解压即可使用 。

大数据课程J1——Scala的概述_第1张图片 

创建 scala project。

工程创建完毕后,创建scala object 。

大数据课程J1——Scala的概述_第2张图片

编写代码。

大数据课程J1——Scala的概述_第3张图片 

运行得到结果。 

三、Eclipse介绍

1. 概述

大数据课程J1——Scala的概述_第4张图片

 官方网址: Eclipse Downloads | The Eclipse Foundation

Eclipse是著名的跨平台的自由集成开发环境(IDE)。主要用来Java语言开发,也可以通过安装不同的插件来支持不同的计算机语言,比如C++和Python等开发工具。

注:集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。

2. 常见的IDE

1. Microsoft Visual Studio

Microsoft Visual Studio(简称VS)是微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台.如果你在做Windows的应用开发,那么使用Microsoft自己的开发工具肯定没错。Visual Studio产品包含C++、C#和VB.NET语言。还可以为Windows x86、Windows RT和Windows手机做开发。最新版被优化为可用于触摸,方便使用Microsoft Surface平板进行编程的开发者。开发者需要付费购买。

2. Eclipse

Eclipse是著名的跨平台开源集成开发环境(IDE)。最初主要用来Java语言开发,亦有人通过插件使其作为C++、Python、PHP等其他语言的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持,使得Eclipse拥有较佳的灵活性,所以许多软件开发商以Eclipse为框架开发自己的IDE。

3. IDEA

全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、创新的GUI设计等方面的功能可以说是超常的。

 

你可能感兴趣的:(大数据)