• 大数据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/

  • 相关阅读:
    Vue快速学习_第四节
    Vue快速学习_第三节
    Vue快速学习_第二节
    从N个元素的集合中随机取m个元素的算法实现
    Mysql加锁过程详解
    TFS 测试用例导入、导出工具
    TFS实现需求工作项自动级联保存
    Gulp自动构建Web前端程序
    Oracle PL/SQL Developer集成TFS进行团队脚本文件版本管理
    Python sphinx-build在Windows系统中生成Html文档
  • 原文地址:https://www.cnblogs.com/wj1998/p/10459665.html
Copyright © 2020-2023  润新知