学习clojure有一段时间了,大多停留在看clojure doc与api和书籍上面,看的写的都是基于repl的一些零碎单调的小例子,基本的函数与关键字大概熟悉了,但还需要大量案例与工程的学习,在这篇文章中,我将零零碎碎地把自己阅读工程源码和如何构建自己的web项目的过程记录在这篇文章中,目前在读的主要是三个github上clojure web工程,工程不大,还是比较适合自己对clojure的进一步的学习,这里我贴下路径,
一个基于noir框架+bootstrap编写的关于tair(kv系统)的监控项目
https://github.com/dutor/lemon/blob/master/project.clj
一个zk的web框架,和上面这个工程类似
https://github.com/qiuxiafei/zk-web
也是类似的基于compojure的计算买房贷款的小工程
https://github.com/xumingming/house
基于目前自己clojure的熟悉程度,学习上面三个小工程,还是有一定难度,但还得硬着肚皮坚持看下去,如有心得,再来次记录一二。
lemon工程阅读笔记:
启动clj是这样的(server.clj)
(server/load-views-ns 'lemon.views)
(defn -main [& m]
(let [mode (keyword (or (first m) :dev))
port (Integer. (get (System/getenv) "PORT" "8011"))]
(server/start port {:mode mode
:ns 'lemon})))
对于以上两段代码,目前还没搞清楚是如何执行的,-main()作为程序入口,执行了start方法,但(server/load-views-ns 'lemon.views) 这段代码又是怎么执行的呢? 难道是类似java中静态代码块?这个疑问已经在网上提了问题,到时候有答案我会再记录下。
在这里我们还要理解keyword symbol 关键字与符号有什么区别.
->(seq? [1 2 3]) 处理的结果是false 证明不是序列哟
->(coll? [1 2 3] 处理的结果是true
相关推荐
Clojure是一种基于Lisp家族的函数式编程语言,它运行在Java虚拟机(JVM)上,同时也支持JavaScript和...通过深入学习Clojure,你可以提升自己的编程技巧,拓宽解决问题的思路,并参与到这个充满活力的开源社区中去。
《Clojure电子书》集合包含了三本关于Clojure编程的重要书籍和一个Leiningen的Windows安装程序,这对于学习和深入理解Clojure语言至关重要。Clojure是一种基于Lisp的函数式编程语言,它运行在Java虚拟机(JVM)上,...
1. **基础篇**:这一部分将引导读者入门 Clojure 编程语言的基本概念和语法,为后续深入学习打下坚实的基础。 - **Clojure 入门**:介绍 Clojure 的安装过程、REPL(Read-Eval-Print Loop)环境的使用方法以及简单...
作者在开始学习Clojure时,体会到了编程的乐趣,这种感觉只有在初次接触计算机并执行命令时才曾经有过。Clojure语言让程序员能够直接与程序沟通,无需经过模糊的间接层次,使得程序员感觉自己真正控制了程序。 ...
### 编程Clojure:全面解析与学习指南 #### 一、Clojure语言概述 《Programming Clojure》是一本深入探讨Clojure编程语言的书籍,该书由Stuart Halloway编写,出版于2009年3月,由Pragmatic Bookshelf出版社发行。...
在这个压缩包文件中,包含了一些关于Clojure的重要资源,特别是对于学习和理解Clojure 1.3.0版本非常有帮助。 1. **《Programming Clojure》**:这本书由Stuart Halloway和Aaron Bedra编写,是Clojure编程的经典...
- **书籍**: 有许多优秀的书籍可以帮助深入理解Clojure的语言特性和最佳实践,如《Clojure in Action》和《Programming Clojure》等。 #### 七、案例分析与实践 - **Clojure项目实战**: 通过实际项目来学习Clojure...
下面我们将深入探讨如何使用Clojure和JDBC来操作MySQL数据库。 首先,你需要在项目中添加`clojure.java.jdbc`的依赖。如果你使用Leiningen作为构建工具,可以在`project.clj`文件的`:dependencies`列表中添加以下...
《Programming Clojure 第三版》是一本深入探讨Clojure编程语言的专业书籍,旨在帮助开发者全面理解和掌握这门基于Lisp的现代函数式编程语言。Clojure是由Rich Hickey设计的,它运行在Java虚拟机(JVM)上,同时也...
Clojure Handbook是一份关于Clojure编程语言的学习笔记,旨在为读者提供一个方便的备查材料,以加深对Clojure语言特性的理解和记忆。 首先,Clojure作为Lisp语言家族的一员,具有一些独特的特性。Lisp语言以其极简...
对于希望学习Clojure和GraphQL结合的开发者来说,这是一个宝贵的资源。通过深入理解Lacinia,开发者不仅可以掌握如何在Clojure中实现GraphQL,还能领略到函数式编程在构建现代Web服务中的强大潜力。
### Clojure入门教程知识点概览 #### 一、Clojure简介 ...无论是对于希望深入了解函数式编程的新手,还是对于希望在JVM平台上构建高性能系统的资深开发者而言,Clojure都是一种值得学习和使用的优秀编程语言。
综上所述,《Living Clojure》这本书旨在帮助读者深入了解Clojure编程语言的核心特性和实际应用,适合希望学习或已经熟悉Clojure的开发者阅读。通过本书,读者不仅可以了解到Clojure的基本语法和概念,还可以学习到...
这本书作为一本学习资料,很可能会深入探讨Clojure语言的核心概念,包括但不限于其数据结构、函数式编程范式、宏系统、状态管理、并发编程机制等。 书中可能还会提供实践案例,教授如何利用Clojure解决现实世界的...