为了保持代码库的整洁和可维护性,请遵循以下规范。
- 严格遵循 PEP 8。
- 最大行长:88 字符 (Black 默认)。
- 使用 Google 风格的 Docstrings。
- 每个模块、类和公共函数都必须有文档字符串。
def connect_to_target(ip: str, port: int) -> bool:
"""尝试连接到指定的目标端口。
Args:
ip (str): 目标 IP 地址。
port (int): 目标端口号。
Returns:
bool: 如果连接成功返回 True,否则返回 False。
"""
pass- 标准库导入
- 第三方库导入
- 本地应用/库导入
- 缩进:4 个空格。
- 大括号:K&R 风格或 Allman 风格 (保持文件内一致)。
- 注释风格: 严禁使用
//进行注释。所有注释必须使用/**/风格 (包括单行注释)。
- 类名:
PascalCase(e.g.,NetworkScanner) - 方法/函数:
camelCase(e.g.,scanTarget) - 变量:
snake_case(e.g.,packet_size) - 成员变量:
m_前缀 (e.g.,m_timeout) 或尾部下划线 (e.g.,timeout_)
- 尽量使用 RAII (资源获取即初始化) 惯用语。
- 优先使用智能指针 (
std::unique_ptr,std::shared_ptr) 而非裸指针。 - 避免使用
new/delete。
提交信息格式:
<type>(<scope>): <subject>
<body>
示例:
feat(scanner): add support for UDP scanningfix(cli): resolve argument parsing errordocs: update installation guide