您正在学习的是试看内容,报名后可学习全部内容 报名课程

Learn Clojure第四讲:多态、自定义数据类型与 Java 互操作

本次主要是介绍 Clojure 里面的多态与面向抽象编程,怎么去定义新类型,对比已有数据类型有何优势?record + protocol 是怎么解决表达式问题?与 Java 互操作的坑与注意点,本次视频都会进行讲解。

Learn Clojure 系列课程

  • 第一讲,大致内容:

    • IDE;IntellJ + Curisve; Emacs + Cider
    • 构建工具:leiningen + boot-clj
    • Clojure 语言特点;dynamic + functional + lisp + designed for concurrency + hosted on jvm
  • 第二讲:Clojure 数据类型介绍

    • 基本类型list/vector/map/set 常用操作;
    • seq 抽象;lazy-seq
    • immutable persistent 特性
  • 第三讲:再谈 persistent

    • 函数式数据结构,
    • array-mapped hash trie,
    • red-black tree based sorted-set/map
  • 第四讲:自定义数据类型

    • 多态 multimethod
    • defrecord、protocol
    • Java Interop
  • 第五讲:transducer

    • map/filter/reduce 特点,共性
    • 推导 transducer
  • 第六讲:并发

    • var/atom/agent/ref 四种变量类型;
    • STM multiversion concurrency control
  • 第七讲:宏

    • Clojure 运行原理,LispReader, Compiler
    • code writing code