上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 29 下一页
摘要: 在上期讨论中我们介绍了Scala Macros,它可以说是工具库编程人员不可或缺的编程手段,可以实现编译器在编译源代码时对源代码进行的修改、扩展和替换,如此可以对用户屏蔽工具库复杂的内部细节,使他们可以用简单的声明方式,通过编译器自动产生铺垫代码来实现工具库中各种复杂的类型、对象及方法函数的构建。虽 阅读全文
posted @ 2016-12-06 12:30 雪川大虫 阅读(1083) 评论(0) 推荐(2)
摘要: Scala Macros对scala函数库编程人员来说是一项不可或缺的编程工具,可以通过它来解决一些用普通编程或者类层次编程(type level programming)都无法解决的问题,这是因为Scala Macros可以直接对程序进行修改。Scala Macros的工作原理是在程序编译时按照编 阅读全文
posted @ 2016-11-29 09:27 雪川大虫 阅读(3646) 评论(0) 推荐(0)
摘要: 反射reflection是程序对自身的检查、验证甚至代码修改功能。反射可以通过它的Reify功能来实时自动构建生成静态的Scala实例如:类(class)、方法(method)、表达式(expression)等。或者动态跟踪当前程序运算事件如:方法运算(method invocation)、字段引用 阅读全文
posted @ 2016-10-28 09:38 雪川大虫 阅读(2487) 评论(0) 推荐(0)
摘要: 通过一段时间的学习和了解以及前面几篇关于Slick的讨论后对Slick这个函数式数据库编程工具有了些具体的了解。回顾我学习Slick的目的,产生了许多想法,觉着应该从实际的工作应用角度把我对Slick目前能够达到的目的以及在现有功能优势和特点下如何进一步改进才能正真符合IT系统对数据库程序编程和运行 阅读全文
posted @ 2016-10-14 13:55 雪川大虫 阅读(1737) 评论(0) 推荐(2)
摘要: 前面几篇介绍里尝试了一些Slick的功能和使用方式,看来基本可以满足用scala语言进行数据库操作编程的要求,而且有些代码可以通过函数式编程模式来实现。我想,如果把Slick当作数据库操作编程主要方式的话,可能需要先制定一套比较规范的模式来应付日常开发(也要考虑团队开发)、测试和维护。首先从项目结构 阅读全文
posted @ 2016-10-04 12:52 雪川大虫 阅读(2428) 评论(0) 推荐(2)
摘要: 我在上期讨论里已经成功的创建了一个简单的Slick项目,然后又尝试使用了一些最基本的功能。Slick是一个FRM(Functional Relational Mapper),是为fp编程提供的scala SQL Query集成环境,可以让编程人员在scala编程语言里用函数式编程模式来实现对数据库操 阅读全文
posted @ 2016-09-30 09:38 雪川大虫 阅读(2591) 评论(0) 推荐(1)
摘要: 看完Slick官方网站上关于Slick3.1.1技术文档后决定开始动手建一个项目来尝试一下Slick功能的具体使用方法。我把这个过程中的一些了解和想法记录下来和大家一起分享。首先我用IntelliJ-Idea创建了一个scala项目。下一步就是如何选择数据库了。Slick是集成jdbc的更高层的Qu 阅读全文
posted @ 2016-09-23 08:03 雪川大虫 阅读(4181) 评论(0) 推荐(2)
摘要: Slick (Scala language-integrated connection kit)是scala的一个FRM(Functional Relational Mapper),即函数式的关系数据库编程工具库。Slick的主要目的是使关系数据库能更容易、更自然的融入函数式编程模式,它可以使使用者 阅读全文
posted @ 2016-09-21 11:05 雪川大虫 阅读(7261) 评论(1) 推荐(2)
摘要: 在前面的几篇关于Free编程的讨论示范中我们均使用了基础类型的运算结果。但在实际应用中因为需要考虑运算中出现异常的情况,常常会需要到更高阶复杂的运算结果类型如Option、Xor等。因为Monad无法实现组合(monad do not compose),我们如何在for-comprehension中 阅读全文
posted @ 2016-09-13 09:03 雪川大虫 阅读(802) 评论(0) 推荐(0)
摘要: 在上一节我们讨论了通过Coproduct来实现DSL组合:用一些功能简单的基础DSL组合成符合大型多复杂功能应用的DSL。但是我们发现:cats在处理多层递归Coproduct结构时会出现编译问题。再就是Free编程是一个繁复的工作,容易出错,造成编程效率的低下。由于Free编程目前是函数式编程的主 阅读全文
posted @ 2016-09-09 08:10 雪川大虫 阅读(839) 评论(0) 推荐(0)
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 29 下一页