【文件属性】:
文件名称:Scala函数式编程
文件大小:64.37MB
文件格式:7Z
更新时间:2022-05-07 07:50:12
Scala 函数式编程 程序设计 Progra 编程
函数式编程(FP)是一种软件开发风格,它注重不依赖于编程状态的函数。函数式代码易于测试和复用,容易实现并发,且不容易受到bug的攻击。Scala是一种能很好支持函数式编程的新兴JVM语言。《Scala函数式编程》是针对希望学习FP并将它应用于日常编码中的程序员而写的,内容包括:函数式编程的概念;函数式编程相关的各种“为什么”和“怎么做”;如何编写多核程序;练习和检测。
从OOP到FP,思路的转化
我是使用scala做完一个项目之后,开始阅读本书。
介绍下背景:
1 程序员
2 前C程序员,linux平台,没有很深的java背景
3 用scala做过一个2年期的项目
在使用scala的过程中,碰到的问题主要体现在:
1 scala的很多语法糖不理解,不知道为啥要这么写,有种为了这么写的简洁而这么写的感觉
2 scala很多库在设计的时候,不理解原因,包括Option,Collection的很多看似有冗余的地方
3 很多scala的默认写法,不理解
4 多态的具体化,尤其是协变的意义所在
5 各种重载的符号使用
之前读过 programming in scala,对语言的整体还停留在:
1 scala用起来比java更灵活
2 强大的collection,可以更加方便的处理collection类的数据
3 不同于java的并行处理方法,有点像c的逻辑思路
4 开发成本比java小,但是语言学习成本比java高很多
正在阅读这本书的过程中,只能一点一点说。
第一部分快要读完了,习题也快要做完了。
1 第一部分主要着墨点正是回答我上述问题的1,2,3的。很大篇幅都放在,使用scala实现scala默认库文件的API中,通过对简单的函数式编程逻辑的介绍和实践,主要是实践,建立起来一个比较明晰的scala思维模式,或者叫函数式编程的思维模式。
2 无副作用的函数式编程,同时也解释了为什么在scala中,val和var的区分为什么那么重要。
3 在做习题的过程中,尤其是在做类型推导的过程中,对原来oop,命令式编程向函数式编程转变有很大作用;而且简洁的语法,确实让人有享受编程的感觉。
【文件预览】:
Scala函数式编程.pdf