菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
299
0

可变性编程 不可变性编程 可变性变量 不可变性变量 并发编程 命令式编程 函数式编程

原创
05/13 14:22
阅读数 41241

 

 

可变性编程 不可变性编程  可变性变量 不可变性变量

-1

面向表达式编程是指在代码中使用表达式而不用语句

语句是可以执行的东西,执行代码

表达式是可以求职的东西,返回值

 

【Scala,大部分开发者会在代码中避免使用return】

Java惯用法:一个return语句

def createErrorMessage(errorCode : Int) : String = {

  var result : String = _

  errorCode match {

    case 1 =>

       result = "Network Failure"

    case 2 =>

       result = "I/O Failure"

    case _ =>

       result = "Unknown Error"

  }

  return result;

}

 

 

面向表达式的createErrorMessage

def createErrorMessage(errorCode : Int) : String = errorCode match {

    case 1 =>  "Network Failure"

    case 2 => "I/O Failure"

    case _ =>  "Unknown Error"

  }

 

 

1- 

编程的不可变性值对象一旦创建后就不再改变状态:这是函数式编程的基石

2-

面向表达式编程一般与不变性编程(immutable programming)搭档得很好,但是与可变对象协作就没那么好了。

3-

使用可变对象的代码一般倾向于用命令式(imperative)的风格编码

 

发表评论

0/200
299 点赞
0 评论
收藏