Your folder structure has two jobs, but only does one
5 hours ago
- 文件夹结构有两个不同的任务:查找文件和放置文件,这两项任务有不同的优化标准。
- 放置错误会随着时间的推移而加剧,因为错误分类会成为一种惯例,而导航错误每个开发者每个文件只产生一次性成本。
- 基于角色的结构(例如,按UI角色组织,如forms/、modals/)擅长查找,但会产生模糊的边界和像shared/这样的包罗万象的文件夹,导致放置歧义。
- 基于层次的结构(例如,CE模式:核心、元素、模式)使用基于依赖计数的机械规则,使放置明确,但命名在导航方面不够直观。
- CE模式定义核心为未修改的供应商组件,元素为增强的变体,模式为组合组合,具有严格的向下依赖关系。
- 选择基于角色还是基于层次取决于上下文:跨职能团队或小型代码库偏好基于角色,而不断增长的代码库受益于基于层次,以避免代价高昂的重构。
- AI工具可以协助探索,但不能取代深思熟虑的设计;在不确定时,默认使用确定性规则而非熟悉的分类法。