码迷,mamicode.com
首页 >  
搜索关键字:实用函数编程    ( 121个结果
第三部分 F# 高级编程技术
第三部分 F# 高级编程技术   在第二部分,我们讨论了大多数函数语言常见的函数概念。现在可以说已经理解了函数式编程,就像在阅读了封装、继承和多态性以后,可以说熟悉面向对象编程一样;但要想成为有效的面向对象的开发人员,还需要学习其他内容,用 F# 进行函数编程也没有什么不同。 就像每种面向对象语言的功能各有特色一样,在 F# 中也有一些特有的功能,在其他函数语言中通常没有,当我们在第九章讨论...
分类:其他好文   时间:2014-12-09 12:25:14    阅读次数:177
第九章 把值转变成 F# 带成员的对象类型
第九章 把值转变成 F# 带成员的对象类型   本章介绍 ■声明带成员的类型 ■以函数方式使用接口 ■写类和接口类型 ■从 C# 中使用 F# 代码   我们在第一章介绍 F# 时曾说过,F# 是一种多范式语言(multiparadigm language),它吸收了几种语言中最好的部分;最重要的是,它从函数式和面向对象的语言中吸取了思想。在本章,我们要看到来自面向对象编程灵感的几...
分类:其他好文   时间:2014-12-09 12:17:55    阅读次数:121
8.5 第八章小结
8.5 第八章小结   在这一章,我们完成了核心的函数概念的探索。在讨论了基本原理,比如函数式值和高阶函数之后,我们以更宏观的观点,讨论了函数式应用程序的体系结构。我们把应用程序(或组件)划分成两组:以数据为中心和以行为为中心。 在这一章,我们讨论了以行为为中心的程序。看到了如何开发应用程序,行为不需要硬编码,在以后可以轻松地添加新的行为,既可以在开在发过程中,也可以在运行时,只需通过使用函...
分类:其他好文   时间:2014-12-06 16:53:27    阅读次数:168
8.4.3.2 函数式实现
8.4.3.2 函数式实现   我们不是把基本操作表示为虚方法,通过派生类来填充,而是把它表示为属性,属性的类型是函数类型,Func,函数然后由类的用户提供。清单 8.18 显示了QueryDecision 类的实现,以及创建简单的决策树示例。   清单 8.18 模板方法的简单实现 (C#) class QueryDecision : Decision {    public str...
分类:其他好文   时间:2014-12-06 11:26:19    阅读次数:175
8.4.3 C# 决策树
8.4.3 C# 决策树   在第五章,我们讨论过 F# 的差别联合和 C# 中的类层次结构之间的关系。在此示例中,我们将使用另一个种类层次结构表示决策树的节点,派生两个额外的类来表示两种不同情况(最后结果和查询)。 在函数式版本中,所有的处理逻辑都是在 testClientTree 函数中分别实现的。我们以面向对象的风格,使用访问者模式(visitor pattern)(在第七章讨论过),...
分类:Windows程序   时间:2014-12-06 11:25:34    阅读次数:269
8.4.3.1 模板方法模式
8.4.3.1 模板方法模式   一般来说,模板方法模式能够定义算法或类的骨架,在以后填充缺失的部分,在具体的继承类中实现。基类定义的操作后来被填充,用来实现更复杂的操作。图 8.4 以图表形式显示了这一点。 图 8.4 基类包含抽象方法 PrimitiveOperation,用于实现 TemplateMethod。缺失部分由继承的类 ConcreteClass 填充。...
分类:其他好文   时间:2014-12-06 11:25:13    阅读次数:177
8.4.2 F# 决策树
8.4.2 F# 决策树   从规范的最后一句可以看出,链接既可以指向查询,也可以指向最终结果。在 F# 中,我们可以直接使用有两个选项的差别联合类型来写。规范还讲到了查询的详细信息,查询包含不同的字段,因此,可以用F# 的记录类型表示。 我们将定义一个 F# 的记录类型(QueryInfo),表示有关查询的信息,和一个差别联合类型(Decision),它既可以是另一个查询,也可以是最终的结...
分类:其他好文   时间:2014-12-05 17:27:29    阅读次数:131
8.3.3.1 C# 中的组合行为
8.3.3.1 C# 中的组合行为   这一章,我们首先看到的是用C# 代码写的示例,声明只有一个方法的接口表示检查,然后,为了更方便的方法写代码,我们使用了函数(和 Func 委托)。如果我们想要实现处理两个函数的程序,就像现在用 F# 所做的,可能会立即转回接口。在 C# 中,使用接口肯定要比使用元组或类,以函数作为其成员更方便、更合理。我们已经说过,在 C# 中,有两种选择:对于简单的行...
分类:Windows程序   时间:2014-12-05 10:58:23    阅读次数:152
8.4.1 决策树(Decision trees)
8.4.1 决策树(Decision trees)   决策树是机器学习中最流行的一种算法,可以用于根据数据作出决策,或把输入划分为不同的类别。算法使用树描述数据的哪些属性应进行测试,对每个可能的答案决定做什么。对答案反应既可能是另一个测试,也可能是最终答案。 机器学习理论提供了复杂的方法,用于自动从数据生成树,但对于我们的示例,我们将手工创建树。图 8.3 显示了我们问题的决策树。...
分类:其他好文   时间:2014-12-05 10:57:26    阅读次数:216
8.3.2 构建组合行为
8.3.2 构建组合行为   在清单 8.11 中,检查和报告验证最低收入和最小当前工作年限的函数,明显重复。这些检查有类似的结构:都检查客户的某一属性是否小于最小的允许值。 找出共性是只删除重复第一步,下一步是要看 checkJobYears 和 checkIncome 函数(连同其报表函数)的哪部分是不同的: ■ 检查不同的属性。 ■ 使用不同的最小值。 ■ 有略微不同的消息。 ...
分类:其他好文   时间:2014-12-04 15:39:34    阅读次数:141
121条   上一页 1 ... 8 9 10 11 12 13 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!