# sketch-codeRule
**Repository Path**: timewheel/sketch-codeRule
## Basic Information
- **Project Name**: sketch-codeRule
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-04-07
- **Last Updated**: 2026-03-22
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Codec 编码生成框架
基于 **OOP + FP 双范式** 的现代化编码生成框架。
## 🚀 **快速开始**
### 1. 定义规则
```java
CodecDefinition rule = RuleBuilder.define("ORDER_CODE")
.constant("ORD")
.separator("-")
.timestamp("yyyyMMdd")
.separator("-")
.sequence(1, 9999)
.build();
```
### 2. 注册规则
```java
Codec.registerDefinition("ORDER_CODE", rule);
```
### 3. 生成编码
```java
String code = Codec.generate("ORDER_CODE", new HashMap<>());
// 输出:ORD-20260322-1
```
## ✨ **核心特性**
- ✅ **OOP + FP 双范式** - 面向对象 + 函数式编程
- ✅ **可替换存储层** - 内存/文件/数据库/Redis
- ✅ **配置驱动** - 业务逻辑透明
- ✅ **无状态设计** - 线程安全
- ✅ **SPI 插件化** - 易于扩展
## 📦 **安装方式**
### Maven 依赖
```xml
com.github.codespec
codespec-refactor
2.0-SNAPSHOT
```
## 📖 **文档**
- [架构设计](ARCHITECTURE_DESIGN.md) - 完整的架构设计说明
- [使用示例](SUMMARY.md) - 详细的使用指南
## 📊 **实现状态**
| 模块 | 状态 |
|------|------|
| 核心生成器 | ✅ 完成(10/10) |
| 配置传递 | ✅ 完成 |
| 存储层 | ⏳ 部分完成(内存/文件) |
| 单元测试 | ✅ 完成(13/13) |
## 🎯 **支持的规则类型**
| 类型 | 功能 | 示例 |
|------|------|------|
| CONST | 常量 | "ORD" |
| SEQUENCE | 序号 | 0001-9999 |
| TIMESTAMP | 时间戳 | 20260322 |
| VARIABLE | 变量 | userId |
| SEPARATOR | 分隔符 | "-" |
| UUID | UUID | 550e8400-e29b... |
## 🔧 **高级特性**
### 存储层
```java
// JSON 文件存储
CodecStorage storage = StorageFactory.createJsonFileStorage(
"config/codec-rules.json"
);
storage.save("ORDER_CODE", rule);
```
### 异步生成
```java
CompletableFuture future = Codec.generateAsync(
"ORDER_CODE",
variables
);
future.thenAccept(code -> System.out.println(code));
```
### 批量生成
```java
List