文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州
▲ 本章节目的
⚪ 了解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
解压即可使用 。
创建 scala project。
工程创建完毕后,创建scala object 。
编写代码。
运行得到结果。
三、Eclipse介绍
1. 概述
官方网址: 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设计等方面的功能可以说是超常的。