[todo] 编程的三部分: 状态、配置、算法