9.4.1 函数式和命令式类
在类或者类的构造函数的参数值中的 let 绑定,就像我们在其他 F# 代码中看到的 let 绑定一样,也是不可变值;此外,使用 member 关键字声明的属性,创建的是只读属性(只有 getter)。因此,如果类只引用其他不可变类型的值,那么,类也不可变。
比方说,在前面的例子中,我们要允许改变客户的收入,可以有两种方式:
■以纯函数式风格,对象将返回一...
分类:
其他好文 时间:
2014-12-12 11:42:13
阅读次数:
146
3,动手实战Scala中的泛型 泛型泛型类和泛型方法,也就是我们实例化类或者调用方法的时候可以指定其类型,由于Scala的泛型和Java的泛型是一致的,这里不再赘述。4,动手实战Scala中的隐式转换、隐式参数、隐式类 隐式转换是很多人学习Scala的难点,这是Scala的精髓之一:下面看一下隐藏参...
分类:
其他好文 时间:
2014-12-11 23:55:35
阅读次数:
230
相信EF大家都不陌生了,因为数据库表跟程序实体是一一对应的原因,我们能够通过lambda这种函数式的编程方式进行操作数据库,感觉非常清晰明了。与我们直接写SQL相比,lambda是强类型,拥有更好的扩展性,伸缩性,而且编程更加的方便,快捷。。下面我们就基于Expression和lambda来与大家构...
分类:
其他好文 时间:
2014-12-11 13:51:11
阅读次数:
293
学习了一些scala的基础语法http://twitter.github.io/scala_school/zh_cn/index.html,尝试一下scala的函数式编程。用函数式编程如何实现:sum(f, a,b)=s = 0for i in [a, b] s+=f(i)return s这是命令....
分类:
其他好文 时间:
2014-12-10 21:05:00
阅读次数:
185
Atitit.编程语言的主要的种类and趋势 逻辑式语言..函数式语言...命令式语言
1. 编程语言的主要的种类 逻辑式语言..函数式语言...命令式语言 1
2. 逻辑式语言,,不必考虑实现过程而只需考虑定义和结果
1
3. 第五代语言 1
1. 编程语言的主要的种类 逻辑式语言..函数式语言...命令式语言
在FAQ3里说过,世界上有C和LISP两种编程语...
分类:
编程语言 时间:
2014-12-09 23:08:43
阅读次数:
221
9.1 改进以数据为中心的应用程序
我们回顾一下前面章节中讨论的以数据为中心的应用程序一些内容。第七章,我们讨论了以数据为中心的应用程序的关键是数据结构的设计。函数语言对数据结构的构造提供了非常简单、概念明确思考办法。我们已经学习了所有基本的数据类型,元组、差别联合和记录;还学习了声明泛型类型,实现了在不同程序中重用;讨论了 F# 库中的一些类型,如选项类型和函数式列表。
到目前为止,我...
分类:
其他好文 时间:
2014-12-09 17:56:34
阅读次数:
155
Java 8引入了全新的Stream API。这里的Stream和I/O流不同,它更像具有Iterable的集合类,但行为和集合类又有所不同。 Stream API引入的目的在于弥补Java函数式编程的缺陷。对于很多支持函数式编程的语言,map()、...
分类:
编程语言 时间:
2014-12-09 15:59:18
阅读次数:
239
第三部分 F# 高级编程技术
在第二部分,我们讨论了大多数函数语言常见的函数概念。现在可以说已经理解了函数式编程,就像在阅读了封装、继承和多态性以后,可以说熟悉面向对象编程一样;但要想成为有效的面向对象的开发人员,还需要学习其他内容,用 F# 进行函数编程也没有什么不同。
就像每种面向对象语言的功能各有特色一样,在 F# 中也有一些特有的功能,在其他函数语言中通常没有,当我们在第九章讨论...
分类:
其他好文 时间:
2014-12-09 12:25:14
阅读次数:
177
第九章 把值转变成 F# 带成员的对象类型
本章介绍
■声明带成员的类型
■以函数方式使用接口
■写类和接口类型
■从 C# 中使用 F# 代码
我们在第一章介绍 F# 时曾说过,F# 是一种多范式语言(multiparadigm language),它吸收了几种语言中最好的部分;最重要的是,它从函数式和面向对象的语言中吸取了思想。在本章,我们要看到来自面向对象编程灵感的几...
分类:
其他好文 时间:
2014-12-09 12:17:55
阅读次数:
121