Scala的实际应用场景

背景

我刚接触函数式语言是在大学里,一个叫Programming Languages的学科,一个学期学了将近10个开发语言,其中Functional Programming Language是一个系列,有Scheme,ML等。出来工作后,一直觉得这些语言在商业应用上似乎不太看重。

直到某天我看到一侧新闻,Twitter采用了Scala解决了什么什么瓶颈问题,我才对Scala开始了关注。

但是我不是谈什么是Scala,或者函数式编程的理论,我是谈实际项目中我常用的小技巧。

常用场景

假如我需要显示:(1)订单列表,(2)订单明细。假设前段是HTML,我有对象Order和OrderDetail。在显示列表时,一般的做法是运用for-loop。在显示明细时,也是会用for-loop。
其实在Functional Programming(FP)的思维方式通常不是这样步骤式的一个一个处理。

FP的思维方式是通过函数来转换成我们需要的东西。

例如我们有一个变量 orders 类型为 List[Order],我们需要的HTML结果是 <table> 中,一个order为一个 <tr> 行,我们就需要专注一个Order如何变做一行<tr>的函数:

val content = orders.map( o => "<tr><td>"+o.getOrde
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值