Scala语言学习之环境安装(1)

==> 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

原文地址:http://blog.51cto.com/songqinglong/2071186

时间: 2024-10-04 11:34:10

Scala语言学习之环境安装(1)的相关文章

scala语言简介及其环境安装

scala语言简介及其环境安装 简介: 1.运行在JVM 上,兼容java语言 Scala的代码,都需要经过编译为字节码,然后交由Java虚拟机来运行.所以Scala和Java是可以无缝互操作的.Scala 可以任意调用Java的代码. 2.当面向对象遇到了函数式编程(Object-Oriented Meets Functional) Scala 是面向对象的编程语言,同时也是函数式编程.(fp) 3. 静态类型语言(尽管看起来像动态类型) 动态类型语言 (弱类型语言)JavaScript, 定

Scala学习01 环境安装

Scala是一门运行在jvm上的多范式语言,作为一个java程序员,使用Scala来写写程序,既不用担心会没有java强大的库支持,又能快速地写出简短强悍的代码,除此之外scala还为我们提供了强大的并发支持,Let's love it! 安装 下面来看看如何安装它(在此之前,确保已经安装好了jdk,我使用的jdk1.7). 我们可以通过Scala的官网(http://www.scala-lang.org/download/)来下载Scala.我使用的版本是2.11.1. 将安装包下载在本地之后

R语言学习(4)-环境和函数

环境和函数 1.环境 使用new.env函数创建环境 > an_environment <- new.env() 向环境中分配变量与列表相同 > an_environment[["pythag"]] <- c(12,15,20,21) > an_environment$root <- polyroot(c(6,-5,1)) > assign("moonday",weekdays(as.Date("1969/07/2

Electron – 基础学习(1): 环境安装、创建项目及入门

这几天到年底了,公司也没啥事,闲着就到处瞅瞅.记得上一家公司的时候用 Electron+ng1 写过项目,只是那个时候项目框架都是别人搭的,自己只负责写功能,对Electron没啥认识. 这几天想着反正闲着也是闲着,就捡起来自己玩玩,顺便记录一下. 一.环境安装: 前端开发,现在不管是那个方向,都免不了使用NPM,所以node.js的安装是必须的,也是最基础的一步. 1.安装node.js,从官网 https://nodejs.org/en/  下载当前node.js LTS包(稳定版本),下载

Julia语言简介与环境安装

从今天开始,Mayuyu将要学习一门新的语言,这门语言叫做Julia,为什么要学习它呢? 因为它比较优秀啊! Julia的简介:http://julia-zh-cn.readthedocs.org/en/latest/manual/introduction/ Julia语言设计的目的就是让高性能科学计算为人人所用,它集合很多语言的优点于一身,有C的快速,有Ruby的动态,有Python的通用,有R的在统计学上的得心应手,有Perl的字符串处理,有MatLab的线性代数运算,总之有很多优点,更多了

Scala语言学习

Scala的程序被编译成Java字节码,所以可以运行在JVM上,并且可以调用Java的类库,兼容Java程序. Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成OOP和函数式编程(FP)的各种特性: 面向对象特性:Scala是一种纯面向对象的语言,每个值都是对象.Scala类扩展有两种途径:一种途径是子类继承(单继承),另一种途径是灵活的混入机制.这两种途径能避免多重继承的种种问题. 函数式编程:即函数也能当成值来使用.可以定义匿名函数.高阶函数.多层嵌套函数

UCML快速开发平台学习1-UCML环境安装

       最近公司项目时间紧张,经过各位大神的PK,决定用多年前话10W采购过来,一直被雪藏的UCML来开发.为啥花了钱买回来不用我就不吐槽了. UCML安装         翻看安装手册,貌似不是复杂,一个安装包,数据库是MSSQL2008R2...   环境配置         3部分组成,客户端,服务端,环境库         服务端:除了数据库服务器名,数据库名,用户名密码,是否生效(不要勾),其他的都可以随意,保存项目                       客户端:中规中矩,

hadoop学习—1.环境安装

如需视频或安装软件:请联系QQ:1974983704 所用系统及软件:Win10.Centos6.5.VMware10.MobaXtem_v8.1 1.安装VMware10  2.打开VMware10,安装Centos6.5 2.1选择创建新的虚拟机 2.2选择“自定义”,点击下一步 2.3选择已经下载的Centos6.5.iso 2.4输入用户名.密码,点击下一步 2.5.输入虚拟机名称,及选择存放位置,由于我已经创建过一台Master的虚拟机,所以此处的虚拟机名称为Slaves1   2.6

Scala语言学习笔记(2)

值,变量,代码块,函数 // 值 val x = 1 + 1 val x: Int = 1 + 1 // x = 3 // 变量 var x = 1 + 1 var x: Int = 1 + 1 x = 3 // 代码块 println({ val x = 1 + 1 x + 1 }) // 3 // 函数 (x: Int) => x + 1