bensz-r-developer
Solid当主要交付物是可复用的 R 函数、稳定 API、S3/S4/R6 类或 R Package,需要设计、开发、重构或审查其接口、测试、文档、并行与性能边界时使用。分析项目中只有需要跨分析复用或形成公共 API 的组件才进入本 Skill。⚠️ 不适用:主要交付物是数据分析流程、科学结果、R Markdown 报告或仅服务当前分析的辅助函数;这些任务使用 bensz-rmd-rules。
Code & Development 48 stars
8 forks Updated yesterday MIT
Install
Quality Score: 87/100
Stars 20%
Recency 20%
Frontmatter 20%
Documentation 15%
Issue Health 10%
License 10%
Description 5%
Skill Content
# bensz-r-developer
## 目标
开发优雅、可维护且可复用的 R 软件组件:以明确的输入、返回、错误和副作用契约设计函数与公共 API,用领域对象承载真实不变量和生命周期,并以成熟工具管理文档、测试、并行和性能。
本 Skill 关注的是“R 代码怎样稳定地被调用”,而不是“某次分析怎样可靠地跑完”。触发依据是主要交付物和复用边界,不是任务里是否出现 `.R` 文件或函数:
| 场景 | 主导 Skill |
| --- | --- |
| 主要交付物是可独立测试、文档化、版本化���跨项目复用的函数、类、API、Package | `bensz-r-developer` |
| 主要交付物是数据流、统计结果、Rmd/HTML 报告、论文图表,函数只服务当前分析 | `bensz-rmd-rules` |
| 同时交付分析流水线与可复用组件 | 由主要交付物决定主 Skill;分析主导时先由 `bensz-rmd-rules` 定义组件契约,再由本 Skill 实现组件,最后回到分析流程集成验证 |
不负责单纯运行既有代码,也不把分析项目中的每个 `_functions.R` 或 helper 都泛化成 Package。若主要验收标准是科学结果正确、缓存可恢复或报告可交付,应交给 `bensz-rmd-rules`;仅在其中出现具有独立复用价值的组件时参与协作。
## 流程
### 输入
确认主要交付物、复用范围(当前分析/当前项目/跨项目/公开 Package)、任务类型(函数/脚本/Package、新建/兼容修改)、数据与公开 API、对象生命周期、返回/错误、`output.dir`/`cache.dir` 职责、R/平台/依赖/硬件/复现约束,并读取现有 `DESCRIPTION`、`NAMESPACE`、`R/`、`tests/`、`src/`、`renv.lock` 与项目指令。不得读取凭据、环境文件或无关数据。保守默认不得改变公共 API;会改变类系统、覆盖、依赖或性能语义时先声明假设。
### 执行步骤
#### 1. 盘点现状与定义契约
先判定主要验收对象:是“函数/API/Package 自身的可复用契约”,还是“分析结果、数据流与报告”。再确认目标代码是否需要独立版本、稳定公共接口、跨项目复用或独立测试;仅服务当前分析单元的 helper 即使写在 `.R` 文件中,也仍由 `bensz-rmd-rules` 管理。
确认本 Skill 应主导后,读取调用链和测试,列出不变量、I/O、错误、副作用、并行及兼容边界。已有项目保持命名、类系统和公开 API,除非用户授权迁移。混合任务记录主 Skill、组件边界与交接点,避免两个 Skill 同时改写同一层职责。
#### 2. 选择类系统并建立最小对象模型
对象确有身份、不变量、状态或多步生命周期时才建类;无状态工具保持普通函数:
- S3:轻量值对象、单分派和多数分析型 API。
- S4:需要正式 slot、严格验证、多分派或 Bioconductor 互操作。
- R6:需要引用语义、可变资源或服务式生命周期。
类 API 至少有构造器、验证器、摘要打印和泛型/方法;不要让调用方拼内部结构。详见 [references/class-api-design.md](references/class-api-design.md)。
#### 3. 实现输出与缓存契约
自动落盘显式提供 `output.dir`;重要中间产物另...
Details
- Author
- huangwb8
- Repository
- huangwb8/skills
- Created
- 8 months ago
- Last Updated
- yesterday
- Language
- Python
- License
- MIT
Similar Skills
Semantically similar based on skill content — not just same category
Data & Documents Solid
bensz-rmd-rules
当主要交付物是基于 R 的数据分析流程、科学结果、可复现数据产品、R Markdown/HTML 报告或论文级图表与解读时使用;即使流程中包含 `.R` 脚本和仅服务当前分析的辅助函数,也由本 Skill 主导。⚠️ 不适用:主要交付物是可独立复用的 R 函数、稳定公共 API、类或 R Package;这些任务使用 bensz-r-developer。也不用于仅渲染既有 Rmd 或其它语言的数据分析。
48 Updated yesterday
huangwb8 DevOps & Infrastructure Solid
devops-specialist
DevOps 与运维专家。精通 CI/CD、容器化、编排、基础设施即代码、监控告警和自动化部署。用于构建高效、可靠的软件交付流水线和运维系统。
48 Updated yesterday
huangwb8 Data & Documents Featured
research-literature-interpretation
像资深研究者带学生一样解读单篇论文:提炼问题、机制、证据强弱、边界与可迁移启发。用户提供 PDF、arXiv/DOI/出版社链接、本地论文或正文片段并希望理解、批判、复现或学习时使用;不用于论文发现、多论文综述或只改写摘要。
2,828 Updated yesterday
huangwb8