概述
中文参考文档 | English Reference Documentation
基于Kotlin的整合代码框架。为标准库和部分框架提供各种有用的扩展。
注意:
- 这个框架是为Kotlin Jvm设计的,可以在Java中使用它的一部分功能。
- 这个框架仍在更新中,未来会提供更多的功能。
- 这个框架尚未确定模块、目录和文件结构,未来它们可能会发生较大的变动。
Kotlin版本:Kotlin Jvm 1.5.30
模块
breeze-core
提供基础的扩展。
- 提供额外的顶级方法。如
pass()
、javaTypeOf()
、Any?.cast()
。 - 提供额外的入口方法。如
enumMapOf()
、concurrentMapOf()
。 - 提供额外的操作符方法。如
String.times()
、List.times()
。 - 为常用类提供各种各样的扩展方法。如
String.truncate()
、List.swap()
、Map.asConcurrent()
。 - 为数据类提供各种各样的扩展方法。如
Any?.smartEquals()
、equalsBy()
。 - 提供各种各样的组件,用于实现特定的功能。如
Converter
、DefaultGenerator
、RandomGenerator
、CaseFormat
。 - 支持1到6个参数的元组。
breeze-dsl
提供简洁而灵活的dsl api,用于通过代码生成标记语言的文本。
breeze-functional
提供函数式编程的扩展。
breeze-http
提供简洁而直观的http api,基于Java原生的http api,用于发起http请求。
breeze-javafx
提供javafx的扩展
breeze-logger
提供简单的日志器的api。
breeze-reflect
提供java反射和kotlin反射的扩展。
breeze-serialization
提供简洁而统一的序列化器api,基于第三方库,用于进行数据的序列化与反序列化。
breeze-time
提供java时间api的扩展。
参考
框架 & 库 & 实现
- Spring Boot
- Spring Cloud
- Kodein Framework
- Spek Framework
- Kotlinx Serialization
- charleskorn/kaml
- Jackson
- Gson
- FastJson
- MicroUtils/kotlin-logging
- pmwmedia/tinylog
- MiloszKrajewski/stateful4k
- Awesome Kotlin
- Google Guava
- MehdiK/Humanizer.jvm
- kohesive/klutter
- hotchemi/khronos
- yole/kxdate
- cesarferreira/kotlin-pluralizer
- consoleau/kassava
- sandjelkovic/kxjtime
- hankdavidson/ktime
- vanshg/KrazyKotlin
- MarioAriasC/funKTionale
- KotlinTuples
- Json Path
- langx-java
用法
项目已发布到Maven Central。
Maven
在pom.xml
中:
<dependencies>
<dependency>
<groupId>icu.windea.breezeframeworkgroupId>
<artifactId>${module}artifactId>
<version>${version}version>
dependency>
dependencies>
Gradle
在build.gradle
中:
dependencies {
implementation "icu.windea.breezeframework:$module:$version"
//...
}
Gradle Kts
在build.gradle.kts
中:
dependencies {
implementation("icu.windea.breezeframework:$module:$version")
//...
}