博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
优雅的函数式编程--Clojure概述
阅读量:6073 次
发布时间:2019-06-20

本文共 1021 字,大约阅读时间需要 3 分钟。

欢迎转载,转载请注明出处,徽沪一郎。

楔子

由于阅读storm源码的原因,头一次接触到Clojure。没有花特别的时间来研究clojure语法,只是在一些特殊的用法时,才查了一下clojure官网的文档,基本上能够很快的理解其意思。

在理解了storm中的基本处理流程之后,花了一段时间好好的看了几本clojure编程的书籍,书籍名称及评价分别如下。

  1. clojure programming 介绍了clojure语言的基本特点,同时对于clojure的工程实践做了比较详细的介绍
  2. programming clojure 重点全部在于介绍clojure语言的特点,对于clojure在实际中的应用介绍比较简略,个人以为在对clojure语言本身的介绍方面,这本要优于上面提到的clojure programming一书
  3. the joy of clojure  该书籍从一个比较高的层面来思考clojure为什么要设计成这样,有点类似于c++中的c++沉思录一类的

语言概述

clojure是庞大的lisp编程语言家族中的一个新成员,所以其有lisp语言的鲜明特征,一切皆函数。

clojure语言的核心主要涉及如下几个部分。

  1. 函数式编程
    1. 数据类型
    2. 条件判断语句,循环控制语句
    3. 集合 如set,list,vector, map
    4. sequence 这个是非常特殊的一部分,从传统的c或java转换到clojure编程,常常容易在这卡住
    5. 函数
      1. 变量声明
      2. 集合解构
    6. (特色所在)
  2. 并发编程 (concurrent programming)
    1. STM
  3. 面向对象 clojure吸收并借鉴了object-oriented的编程语言的一些优点,
    1. 函数重载 defmulti
    2. 接口 defprotocol 解决is-a的问题

       

练习

clojure的语法非常简洁优雅,花不了半天的时间就能大体知道个大概,但要想彻底的掌握还是需要大量的练习才行。

哪些题目值得花时间,哪些不值一提,这个已经有人想到了,并搞了个很好的网站。 到该网站注册一个用户名,总共150道题,难度由浅入深,是不可多得的学习资源。

clojure中的语法糖不是特别多,但想一个不落的记处还是有点累,为此完全可以将clojure cheatsheet放置在办公桌最显眼的地方,不多就两张A4张。

 

转载于:https://www.cnblogs.com/hseagle/p/3657449.html

你可能感兴趣的文章
VS2008查看dll导出函数
查看>>
VM EBS R12迁移,启动APTier . AutoConfig错误
查看>>
atitit.细节决定成败的适合情形与缺点
查看>>
iOS - Library 库
查看>>
MATLAB 读取DICOM格式文件
查看>>
spring事务管理(Transaction)
查看>>
django.contrib.auth登陆注销学习
查看>>
js执行本地exe文件的3种方法
查看>>
理解B树索引
查看>>
vi编辑器的命令集合
查看>>
Mysql利用binlog恢复数据
查看>>
解决 Windows启动时要求验证
查看>>
我的友情链接
查看>>
用yum安装mariadb
查看>>
一点IT"边缘化"的人的思考
查看>>
Gallery循环滑动
查看>>
Sql与C#中日期格式转换总结
查看>>
iOS开发流程总结
查看>>
hadoop datanode 启动出错
查看>>
js颜色拾取器
查看>>