上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 29 下一页
摘要: scalaz-stream是一个数据流处理工具库,对资源使用,包括:开启文件、连接网络、连接数据库等这些公共资源使用方面都必须确定使用过程的安全:要保证在作业终止时能进行事后处理程序(finalizer)来释放相关的文件、网络链接、数据库连接等。所谓作业终止包括正常的作业完成(End)、人工强行终止 阅读全文
posted @ 2016-07-26 13:47 雪川大虫 阅读(323) 评论(0) 推荐(0)
摘要: scalaz-stream支持无穷数据流(infinite stream),这本身是它强大的功能之一,试想有多少系统需要通过无穷运算才能得以实现。这是因为外界的输入是不可预料的,对于系统本身就是无穷的,比如键盘鼠标输入什么时候终止、网站上有多少网页、数据库中还有多少条记录等等。但对无穷数据流的运算又 阅读全文
posted @ 2016-07-25 13:29 雪川大虫 阅读(604) 评论(0) 推荐(1)
摘要: 一个完整的scalaz-stream有以下几个部分组成:Source -> Transducer -> Sink,用直白文字来描述就是:“输入 -> 传换 -> 输出”。我们已经在前面几篇讨论中介绍了Source和Transducer的基本情况,这篇讨论我们探讨一下Sink。scalaz-strea 阅读全文
posted @ 2016-07-21 10:25 雪川大虫 阅读(913) 评论(0) 推荐(2)
摘要: 在上一篇讨论里我们介绍了Source,它的类型款式是这样的:Process[F[_],O]。Source是通过await函数来产生数据流。await函数款式如下: await函数的作用是:运算F从外界数据源获取数据A,如:从数据库读取记录、从网络读取网页或读取键盘鼠标输入等。获取数据A后输入函数rc 阅读全文
posted @ 2016-07-19 11:11 雪川大虫 阅读(545) 评论(0) 推荐(0)
摘要: scalaz-stream库的主要设计目标是实现函数式的I/O编程(functional I/O)。这样用户就能使用功能单一的基础I/O函数组合成为功能完整的I/O程序。还有一个目标就是保证资源的安全使用(resource safety):使用scalaz-stream编写的I/O程序能确保资源的安 阅读全文
posted @ 2016-07-15 17:39 雪川大虫 阅读(600) 评论(0) 推荐(0)
摘要: scalaz-stream是一个泛函数据流配件库(functional stream combinator library),特别适用于函数式编程。scalar-stream是由一个以上各种状态的Process串联组成。stream代表一连串的元素,可能是自动产生或者由外部的源头输入,如:一连串鼠标 阅读全文
posted @ 2016-07-07 17:48 雪川大虫 阅读(789) 评论(0) 推荐(0)
摘要: 我们在上一节讨论了scalaz Future,我们说它是一个不完善的类型,最起码没有完整的异常处理机制,只能用在构建类库之类的内部环境。如果scalaz在Future类定义中增加异常处理工具的话,用户就会经常遇到Future[Throwable\/A]这样的类型,那么在进行Monadic编程时就必须 阅读全文
posted @ 2016-06-16 10:44 雪川大虫 阅读(951) 评论(0) 推荐(1)
摘要: scala已经配备了自身的Future类。我们先举个例子来了解scala Future的具体操作: 这是一个标准的异步运算;在成功完成运算事件上绑定callback来获取在其它线程中的运算结果。我们也可以进行异常处理: 又或者同时绑定运算成功和失败事件的callback函数: scala Futur 阅读全文
posted @ 2016-06-15 11:36 雪川大虫 阅读(556) 评论(0) 推荐(0)
摘要: 完成了对Free Monad这部分内容的学习了解后,心头豁然开朗,存在心里对FP的疑虑也一扫而光。之前也抱着跟大多数人一样的主观概念,认为FP只适合学术性探讨、缺乏实际应用、运行效率低,很难发展成现实的软件开发模式。Free Monad的出现恰恰解决我心中的疑问,更正了我对FP的偏见:Free Mo 阅读全文
posted @ 2016-06-04 13:31 雪川大虫 阅读(1481) 评论(0) 推荐(0)
摘要: 我们在前面花了几期时间讨论Free Monad,那是因为FP既是Monadic programming,Free Monad是FP模式编程的主要方式。对我们来说,Free Monad代表着fp从学术探讨到实际应用的转变,因为我们已经示范了如何用Free Monad的算式算法关注分离模式来实现真正的软 阅读全文
posted @ 2016-06-02 16:24 雪川大虫 阅读(568) 评论(0) 推荐(0)
上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 29 下一页