核心用法
friendly-python 是一套面向 Python 开发者的代码质量指导技能,覆盖代码编写、重构、审查及 API/CLI 设计全场景。核心决策优先级为:正确性 > 可读性 > 可扩展性 > 性能优化。
主要功能模块
| 模块 | 作用 |
|------|------|
| Principles | 确立 "正确优先、清晰次之、性能最后" 的设计哲学 |
| Error Handling | 只捕获能处理的异常,保留完整上下文 |
| API Design | 提供简洁入口点,隐藏内部实现细节 |
| Extension Architecture | 集中管理扩展点,降低演化成本 |
| OOP Design | 构造器清晰,避免 `__init__` 中的模式切换 |
| Reuse & Composition | 优先组合而非继承,使用轻量包装器 |
| Portability & Pythonic | 避免照搬其他语言模式,保持 Python 风格 |
| CLI Argparse | 解析与执行分离,结构化子命令 |
| Review | 提供标准化代码审查清单 |
特色机制
- piglet 联动:检测到 piglet 技能可用时,主动建议调用以获得更丰富的代码工艺示例
- 结构化参考:每个主题对应独立参考文档,便于深度查阅
显著优点
1. 决策框架清晰:明确的四级优先级,帮助开发者抵抗过早优化诱惑
2. 场景覆盖完整:从底层错误处理到高层 CLI 设计,形成闭环指导
3. 可组合性设计:与 piglet 的联动建议体现了模块化 Skill 生态思维
4. 实践导向:提供具体审查清单,可直接落地到 CI/CD 流程
潜在局限
1. 依赖外部文档:核心知识分散在多个 references/*.md 文件中,需要配套文件完整才能发挥价值
2. 抽象层级较高:对于初学者,"Pythonic" 等概念需要结合具体示例才能理解
3. 性能指导有限:明确将性能置于末位,对高性能计算场景指导不足
4. 版本未指明:未说明针对 Python 2/3 或特定版本的适配情况
适合人群
- 有一定 Python 基础,希望提升代码质量的初中级开发者
- 负责代码审查的技术负责人
- 设计公共 API 或 CLI 工具的工程师
- 追求可维护性的长期项目维护者
常规风险
- 参考文件缺失风险:若
references/目录不完整,指导可能流于表面 - 过度抽象风险:严格遵循原则可能导致简单场景过度设计
- 联动依赖风险:piglet 联动仅为建议,实际效果取决于 piglet 本身质量
- 团队共识风险:"可读性" 标准主观,需团队对齐理解后方可推广