zoukankan      html  css  js  c++  java
  • 大数据spark学习第一周Scala语言基础

    Scala简单介绍

    Scala(Scala Language的简称)语言是一种能够执行于JVM和.Net平台之上的通用编程语言。既可用于大规模应用程序开发,也可用于脚本编程,它由由Martin Odersk于2001开发。2004年開始程序执行在JVM与.Net平台之上。由于其简洁、优雅、类型安全的编程模式而受到关注。 
    Scala的创建者——Martin Odersk

    在Scala的创建之初,并没有怎么引起重视,随着Apache Spark和Apache Kafka这样基于Scala的大数据框架的崛起,Scala逐步映入大数据从业者的眼帘。

    Scala的拥护者们觉得Scala的主要优势是速度和它的表达性。眼下使用scala的作为支撑公司开发语言的包含Foursquare和Twitter。2009年Twitter把大部分后台系统的开发语言从Ruby换成了Scala。參见这篇文章:Twitter on Scala: A Conversation with Steve Jenson, Alex Payne, and Robey Pointer,” Scalazine, April 3,2009, www.artima.com/scalazine/articles/twitter_on_scala.html.

    Scala语言具有例如以下特点:

    1 纯面向对象编程语言

    • (1) Encapsulation/information hiding.
    • (2)Inheritance.
    • (3)Polymorphism/dynamic binding.
    • (4)All predefined types are objects.
    • (5) All operations are performed by sending messages to objects.
    • (6)All user-defined types are objects.

    2 函数式编程语言 
    定义:Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data.

    函数式编程语言应支持以下特性: 
    (1)高阶函数(Higher-order functions) 
    (2)闭包( closures) 
    (3)模式匹配( Pattern matching) 
    (4)单一赋值( Single assignment ) 
    (5)延迟计算( Lazy evaluation) 
    (6)类型推导( Type inference ) 
    (7)尾部调用优化( Tail call optimization) 
    (8)类型推导( Type inference )

    3 Scala语言具有非常强的兼容性、移植性 
    Scala执行于JVM上,能够与JAVA进行互操作,具有与JAVA一样的平台移植性

    Scala安装教程

    厦门大学数据库实验室 http://dblab.xmu.edu.cn/blog/929-2/

  • 相关阅读:
    TCP
    JAVA面向对象
    windows本地搭建easy-mock环境
    创建axios拦截器
    记录axios高效率并发的方法
    JS:数组中push对象,覆盖问题
    使用el-tree-transfer的方式
    从后台拿到echarts的数据值,求出百分比
    项目遇到的小问题(关于vue-cli中js点击事件不起作用和iconfont图片下载页面css样式乱的解答)
    JavaScript 常用内置对象(字符串属性、Math对象、Array数组对象)
  • 原文地址:https://www.cnblogs.com/wj1998/p/10459665.html
Copyright © 2011-2022 走看看