Clay.
上海 / 中国--:--:--
回到首页

My craft / Android development

Kotlin gives
structure.

Compose gives motion.

我用现代 Kotlin 组织复杂业务,用 Jetpack Compose 把状态、视觉和交互连接起来。

CoroutinesFlowComposeMaterial 3
01 / Kotlin

表达力,
而不是样板代码。

空安全、扩展函数、密封类型与协程,让领域模型更精确,也让异步流程更容易理解。

  • Structured concurrency
  • Type-safe domain models
  • Flow-based data streams
02 / Compose

界面是状态的
可视化函数。

声明式 UI 让设计系统、响应式布局与自然动效共享同一种语言,迭代更快,逻辑也更透明。

  • Unidirectional data flow
  • Reusable design system
  • Preview-driven workflow

A small example

清晰的状态,
自然的界面。

组件只接收所需状态与事件,业务留在可测试的状态持有者中。

@Composable
fun ProjectCard(
  project: Project,
  onOpen: (Project) -> Unit,
) {
  Card(
    onClick = { onOpen(project) },
  ) {
    Text(project.title)
    AnimatedVisibility(project.isNew) {
      Badge("New")
    }
  }
}

Working principles / 实践原则

Build less.
Mean more.

01

State is the source

状态向下,事件向上。让 UI 成为状态的直接表达,而不是一串难以追踪的指令。

02

Small, focused APIs

用小而明确的组件边界控制复杂度,让预览、测试与复用都成为日常能力。

03

Motion with purpose

动效用于解释状态与空间关系。优先 transform、opacity,并始终照顾减少动态效果的偏好。

04

Performance by design

稳定参数、合理拆分状态读取,在设计阶段就避免无意义的重组与昂贵绘制。

Selected work

看完技术,
再看看它们如何成为产品。

查看作品