Clojure

开源公司:甲骨文公司

作品详情

中文名
clojure
展开
特 点
函数式编程语言引入
展开
风格
Clojure是一种LISP风格的语言
展开
性 质
当今最主流的运算平台JVM
展开
释 义
JVM的字节码进行运算
展开
特色
支持不可变的数据结构
展开

1基本内容

  

概述

Clojure是一种LISP风格的语言,运行在JVM上。Clojure的一大特色就是其并发机制,它支持不可变的数据结构(Clojure是来自于可持久化的数据结构)。Clojure还有一个特色是软件事务存储(Software Transactional Memory,STM),其支持用事务代替锁和互斥器来更新共享内存。STM还是一个有争议的技术,还需要更好的证明自己,一个简单的办法就是访问一个JVM上的实现。

作为当今最主流的运算平台JVM,把函数式编程语言引入JVM也是很多人尝试的方向,Clojure就是其中之一。Clojure是一个在JVM平台运行的动态函数式编程语言,其语法解决于LISP语言,在JVM平台运行的时候,会被编译为JVM的字节码进行运算。  

特点

Clojure保持了函数式语言的主要特点,例如immutable state,Full Lisp-style macro support,persistent data structures等等,并且还能够非常方便的调用Java类库的API,和Java类库进行良好的整合。

2编程举例

Hello world:

(println "Hello, world!")

定义一个函数:

(defn square [x] (* x x))

使用Java Swing库的 GUI Hello World:

(javax.swing.JOptionPane/showMessageDialog nil "Hello World")

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
华为坤灵系统功能设计开发: 1,参与设计华为坤灵系统中部分系统的去O及系统升级。 2,参与部分系统的微服务改造设计开发。 3,数据库性能优化。 4,服务问题处理。
“ZTSDP”是一款基于零信任理念的软件定义边界(SDP)产品,由SDP客户端软件(终端环境感知、终端安全检测、安全浏览器、VPN)、SDP网关(网络隐身、网络攻击检测、动态权限控制)和零信任安全管理平台(户身份管理、用户权限管理、多因素身份认证、网络异常分析、持续信任评估和大模型预案生成)三个部分组成。 SDP客户端:产品形态为软件,访问内网资源的统一入口,支持windows、MAC、麒麟、鸿蒙和安卓等六种操作系统终端,支持静态口令、OTP、LDAP、AD域、数字证书、短信、U-key等多种认证方式,满足用户在不同场景的接入需求; SDP网关:产品形态为硬件或软件,支持网络协议解析和攻击
项目模块: 用户信息、点餐、人脸认证、账单、健康打卡、意见反馈、申请餐券、门禁记录、复制密钥 本人职责: 1.开发用户模块,用户信息由校方(企业)自行人工录入系统后台,用户首次绑定关系使用支付宝小程序(紫藤智慧食堂),用户信息使用SM2加密算法进行持久化,信息脱敏后存入Redis 2.开发点餐模块,点餐成功后使用RocketMQ推送至订单系统进行异步处理,用户使用余额进行支付,不支持其他渠道支付(项目由国企银行进行补助,故无法支持其他渠道结算) 3.开发复制密钥模块,使用SM2对用户非敏感信息进行加密,该密钥在支付宝小程序无法自动识别用户身份信息时做补充处理 4.开发申请餐券模块,如当前食堂
平安证券智能机器人IM系统 证券im系统与银行im系统有些不同,银行IM系统主要保证用户与坐席之间文字聊天。 但是证券系统需要实时显示股票实时走线图。需要收发大量的数据,同时还要保证数据的及时性。 在整个系统中使用了websocket技术保证数据的实时性,使用nas缓存保证大数据的交互。 同时使用mqs来保证负载均衡,不会因为多个大消息进入单个服务器导致内存溢出。同时使用主键+缓存方式消减大消息的情况。
10年以上开发经验,可以快速实现模块对象管理得增删改查,逻辑算法实现、数据报表导出等功能实现,熟悉restful API接口规范
1070微服务java
当前共17786个项目

评论