- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 clojure.spec库入门学习
clojure是一门动态类型的语言,在类型检查方面并没有c++/java这种静态类型语言好用,所以多个模块之间进行接口参数传递时,由于接口文档设计不严谨等原因,总会发生接口参数类型错误,参数个数不正确等问题,给代码调试带来很大的挑战,因此在clojure中,对接口参数的进行类型检查是非常必要的。为此,我们找了clojure.spec这个库(https://clojure.github.io/cloj
2016-08-25 23:11:14 1792
原创 namespace/symbol/:keyword/::keyword in Clojure
在实际使用中,我们经常会遇到keyword和string之间的转换,尤其是如果将map中的key由string变为keyword的时候,会带来很多好处,比如我们使用的IDE中的keyword可以高亮显示,而且keyword还可以作为函数,更重要是的对map的结构会带来很多方便,所以掌握keyword和string之间的转换尤为重要。
2016-08-24 21:31:30 1013
原创 Clojure中Vector和List的区别及其相关函数
Clojure是一门动态类型的语言,运行时才会做类型检查。它也不会像java这种面向对象编程语言,再调用一个对象的函数时,首先这个函数必须是属于某个对象的函数,否则检查报错。所以对于clojure中的数据类型为Vector或者List的变量,总是会让初学者在选择时比较发愁,不知道什么情况下使用vector好?什么情况下使用list好?哪些函数是接收list作为参数的?而哪些函数又是接收vector作
2016-08-13 17:13:55 2541 2
原创 Persistent and Transient Data Structures in Clojure
最近在项目中用到了Transient数据结构,使用该数据结构对程序执行效率会有一定的提高。刚刚接触Transient Data Stuctures,下面将自己关于对其的了解总结如下:1.clojure的不可变数据特性及存储方式: clojure中的数据结构具有不可变特性(Persistent),也就是对一个数据结构添加元素、删除元素、更改元素,返回的是一个新的数据结构,而原来的数据结构不会变:
2016-08-06 21:03:48 986
原创 Clojure中的关联数据结构(Vector/Map/Set)
在刚刚接触clojure这门语言时,总是容易搞不清楚某个函数都适用于哪些的数据结构,为什么有的函数可以用于vector,却不能用于list呢。其实主要是因为各种类型实现的接口不同,本文总结一下Clojure中的实现关联数据接口的数据结构(Vector/Map/Set),以及这些数据结构拥有哪些可以公共的函数可以操作。1.clojure中的关联数据结构 clojure中有三种常用的关联的数据结构
2016-08-03 16:28:42 2168
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人