Skip to content

tonydeng/clojure-learning-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Clojure学习笔记

Clojure Logo

为什么要学习Clojure

我写Java也有10多年了,其间用过Python、PHP、Ruby、Groovy、JS等动态语言。Java相对C、C++来说有明显的优势,可以说是一种更高级的语言,高级语言带来的优势是能用更少的代码写出同样的功能,代码更接近与人的表达。

Java依然是现在业界最流行的开发语言,但这并不意味着Java能够一直的辉煌下去。现在各种更高级的动态语言如雨后春笋,百花齐放,虽然目前还没有完全超越Java的地位,但是终究有一天会走向巅峰(毕竟,对于现在的业界来说,工程师的开发时间成本远远高于服务器的成本)。

而且这些动态语言的理念和特性也是值得Java开发者学习的,从更高级的语言学习到的东西可以反过来更好帮助自己写好Java代码,这也是学习一门新语言的初衷。

我最近选择Clojure作为自己要学习的新语言,原因如下:

  1. Clojure是Lisp的一种方言版本,继承了Lisp的绝大多数特性,而Lisp是IT界大牛Paul Graham的名著《黑客与画家》中极力推荐的。
  2. 这门古老的语言之一也诞生了50多年了,但它的先进性依然是其他语言不可比拟的,大多数的高级语言都或多或少的借鉴了Lisp的先进理念。Paul Graham在《What Make Lisp Different》中有详细的说明。
  3. Clojure可以运行在JVM上,可以方便的调用Java类库,不用担心之前在Java上积累的经验全无用武之地,每个人从内心来说都是害怕改变的,平滑的过渡不失为一个好办法
  4. Twwitter非常著名的实时计算框架Strom采用的就是Clojure,说明它在高性能并发上具有特别的优势

参考

  1. Clojure的主要特性
  2. 为什么Lisp语言如此先进

Clojure学习资料

社区

  1. 4clojure
  2. clojure google group
  3. Clojure China社区
  4. semgentault clojure相关问题
  5. Clojure API中文文档

视频

  1. 土豆上Clojure的合集

Gitbook

  1. lean-clojure
  2. Clojure入门教程

简书

  1. 学习Clojure的好资源
  2. Clojure零基础教程

Blog

  1. 庄周梦蝶 Clojure相关Blog
  2. ivaneye.com Clojure相关Blog
  3. 一颗菠菜的Clojure相关Blog

About

Clojure学习笔记

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published