为了账号安全,请及时绑定邮箱和手机立即绑定

Scala程序设计—基础篇

辰方 其它
难度初级
时长 2小时13分
学习人数
综合评分9.63
93人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 函数定义语法
    查看全部
  • scala类型体系 层级关系图
    查看全部
    0 采集 收起 来源:Scala数据类型

    2018-01-01

  • 一、什么是函数式编程:In computer science,functional programming is a programming paradigm--a style of building the structure and elements of computer programs--that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data. 在计算机科学领域,函数式编程是一种编程范式,它是一种构建计算机程序结构的方法和风格,它把程序当做数学函数的求值过程并且避免了改变状态和可变的数据。
    查看全部
  • 一、概念:In computer science,functional programming is a programming paradigm--a style of building the structure and elements of computer programs--that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data. 在计算机科学领域,函数式编程是一种编程范式,它是一种构建计算机程序结构的方法和风格,它把程序当做数学函数的求值过程并且避免了改变状态和可变的数据。 二、函数式编程的重要概念: 2.1 纯函数(Pure Function),或函数的纯粹性(Purity),没有副作用(Side Effect)。 副作用是状态的变化(mutation):例子:修改全局变量,抛出异常,IO读写,调用有副作用的函数。 2.2 引用透明(Referential Transparency):对于相同的输入,总是得到相同的输出。 如果f(x)的参数x和函数体都是引用透明的,那么函数f是纯函数。 2.3 不变性(Immutability)为了获得引用透明性,任何值都不能变化。 2.4 函数是一等公民(First-class Function):一切都是计算,函数式编程中只有表达式,变量、函数都是表达式。 三、高阶函数(Higher order Function) 闭包(Closure) 表达式求值策略:严格求值 和 非严格求值 Call By Value vs. Call By Name 惰性求值(Lazy Evaluation):定义表达式不会立即求值,用到后才会求值。 递归函数,函数式编程没有循环,循环由递归实现。调优递归:尾递归。 scala为什么会受推崇: 1.摩尔定律失效: 一个芯片上面的电子元器件的个数是有极限的 2.多核处理器: 进入多核时代,编程模型发生改变,传统的编程范式(java、c)会非常复杂,开发成本大,容易出错,质量难以保证。函数式编程是最适用于并行编程。
    查看全部
  • 不不
    查看全部
  • 1.函数式编程:只用纯函数(没有副作用的函数)来编写程序。其中副作用是状态的变化 2.不变性:为了获得引用透明性,任何值都不能发生变化 3.引用透明:相同的输入总能得到相同的输出。
    查看全部
  • scala是纯正的面向对象语言;可以与JAVA互操作:即把Java的包input到Scala里面直接调用。
    查看全部
    0 采集 收起 来源:课程介绍

    2017-12-06

  • 字符串插值
    查看全部
    0 采集 收起 来源:Scala数据类型

    2017-11-27

  • 柯里化
    查看全部
    0 采集 收起 来源:Scala 柯里化

    2017-11-27

  • match表达式
    查看全部
  • if表达式
    查看全部
  • 函数定义
    查看全部
  • Block代码块
    查看全部
  • 字符串插值
    查看全部
    0 采集 收起 来源:Scala数据类型

    2017-11-27

  • 类型体系
    查看全部
    0 采集 收起 来源:Scala数据类型

    2017-11-27

举报

0/150
提交
取消
课程须知
本课程是Scala的基础教程,虽然对学员的基础不做要求,但是学员最好有一门编程语言的经验,这样会更容易理解课程里的一些概念。
老师告诉你能学到什么?
1、函数式编程的基本概念 2、Scala的开发环境 3、高阶函数 4、表达式求值策略 5、Scala Immutable Collection简介

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!