Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Splitting Until It Fits

说明与用途

将任务拆分为小型、独立的迭代,消除隐藏的依赖关系,简化测试并实现并行工作。

问题

Large code changes in a monolith become hard to manage and test when a single task spans many files and dependencies, leading to unclear boundaries and difficulty in parallelizing work.

结果

By splitting work into small, dependency‑free iterations, tasks become testable, parallelizable, and easier to manage, reducing the risk of hidden dependencies.

工作流

  • Define a task as a service that takes runtime from the platform.
  • Break the task into stages, sub‑stages, and iterations.
  • Ensure each iteration is one concern: 1–2 files + its test.
  • Check that the executor does not need to look up anything; if they do, split further.
  • Order iterations by data dependency; independent iterations can run in parallel.
  • Run a package‑specific test for each iteration (e.g., go test ./internal/repository/order/... -race -count=1).
  • After all iterations, run a full suite once for formatting, vetting, linting, and race checks.

证据

The executor had to look something up.

来源

An iteration that can't be checked isn't finished, it's abandoned.

来源

  • 记录日期: 2026-09-12T20:46:00.422Z