严格架构治理Skill strict-architecture

严格架构治理技能用于定义和执行软件项目中的严格架构规则,包括代码行数限制、函数数限制、参数数限制、避免默认值和使用接口优先I/O,适用于Python、Golang和.NET。关键词:严格架构、代码治理、软件质量、接口优先、多语言支持、代码规范。

架构设计 0 次安装 0 次浏览 更新于 3/25/2026

名称: 严格架构 描述: 强制执行统一的严格治理规则(每文件500行,5个函数,4个参数)和针对Python、Golang和.NET的接口优先I/O。

严格架构治理

这些规则适用于项目中的所有代码,无论使用何种语言。

1. 通用限制(不可协商)

这些约束适用于每个源文件:

  • 最大行数: 每个文件500行。(如果超过,请拆分文件)
  • 最大函数数: 每个类/结构体5个公共函数/方法。
  • 最大参数数: 每个函数/构造函数4个参数。
  • 无默认值: 不允许默认参数值。
  • 无环境变量: 在构造函数或方法内部不读取环境变量(通过传入值)。

2. 按语言的实现模式

Python实现

  • 接口: 对所有依赖使用 typing.Protocol
    class IClient(Protocol):
        def fetch(self) -> dict: ...
    
  • 配置: 如果参数超过4个,使用 @dataclass 作为配置对象。
  • 环境块: 除了 main.py 外,拒绝在任何地方使用 os.environos.getenv

Golang实现

  • 接口: 为所有依赖定义 type Service interface
  • 配置: 使用严格结构体作为配置。
  • 环境块: 除了 main.go 外,拒绝在任何地方使用 os.Getenv
  • 禁止: 不要对依赖使用结构体指针;使用接口。

.NET / C# 实现

  • 接口: 使用 IInterface 前缀。
  • 配置: 使用 IOptions<T> 模式或简单的POCO配置对象。
  • 环境块: 除了 Program.cs 外,拒绝在任何地方使用 Environment.GetEnvironmentVariable

3. 执行检查清单

在保存任何文件之前,验证:

  1. [ ] 文件是否少于500行?
  2. [ ] 构造函数是否将依赖作为接口传入?
  3. [ ] 是否有0次调用环境变量读取器?
  4. [ ] 是否有0个默认参数?