ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

20+研究代码必备工具大清单:Good Research Code Handbook 全书工具索引与用途详解

20+研究代码必备工具大清单:Good Research Code Handbook 全书工具索引与用途详解 20研究代码必备工具大清单Good Research Code Handbook 全书工具索引与用途详解【免费下载链接】codebookThe Good Research Code Handbook项目地址: https://gitcode.com/gh_mirrors/code/codebookGood Research Code Handbook研究代码手册是一本面向科研新手的好代码指南全书系统梳理了从环境配置、代码整洁、单元测试到文档协作的 20 款必备研究代码工具。本文提供全书工具索引与用途详解帮你一次配齐科研编程工具箱 。 项目初始化git conda cookiecutter 快速起步科研项目的正确姿势是一个项目 一篇论文 一个文件夹 一个 git 仓库。手册在 docs/setup.md 中推荐的第一组研究代码工具是git命令行版本控制工具建议每天提交几次一个 commit 对应一个相关的工作单元github代码托管与分享网站与本地仓库同步conda数据科学事实标准的包管理器 虚拟环境管理器用environment.yml记录依赖告别环境灾难setuptools定义可pip install的 Python 包cookiecutter一条命令从模板创建标准化项目骨架灵感来自 shablona 结构配套的环境定义文件可直接参考仓库根目录的environment.yml它是整本书构建环境的依据。 代码整洁五件套black / flake8 / vulture / jupytextdocs/tidy.md 教你把研究代码越写越干净工具作用一句话心得flake8 / pylintPython 代码风格检查器linter在 IDE 里实时提示逐步养成好习惯black自动格式化器保存即格式化老代码跑一次立刻变整齐vulture死代码检测器找出没人再调用的函数安全删jupytextNotebook ↔ Markdown 互转文本形式重构 notebook、进 git 更好 diff配套建议notebook 只用于文字编程解释 图表IO 和长流水线移出 notebook并且每次提交前 restart run all保证 notebook 一分钟内能从头跑通。 解耦代码pandas / xarray / collections 数据结构三剑客docs/decoupled.md 用真实软件wave_clus的面条代码反例说明魔法列索引和无名维度是研究代码的两大杀手。pandasDataFrame 让A.timestamp取代A[:, 10]可读性立增xarray给多维张量命名维度不再纠结batch × channel × height × width的顺序collections标准库容器defaultdict、Counter分组统计不费劲✅ 测试首选 pytest让研究代码更可靠的单元测试工具docs/testing.md 的核心观点非正式测试没有记录、保质期极短应该用pytest把它自动化。asserttest_前缀函数即成测试pytest.raises处理预期报错场景pytest .一键跑全目录输出比手写断言信息丰富得多进阶可用Coverage.py统计测试覆盖率80% 是常见目标 文档与命令行argparse / shellcheck / make / sphinxdocs/docs.md 与 docs/pipelines.md 覆盖让别人和未来自己看得懂的工具链argparsePython 标准库命令行参数解析自动生成交互式--helpshellcheckbash 脚本常见错误检查器主流编辑器均有插件make用 Makefile 声明计算 DAG只重建需要重建的步骤本身就是自文档化产物sphinx从 docstring 自动生成 HTML 文档本书正是由 jupyterbook sphinx 构建readthedocs托管静态文档的网站一条命令上传 协作工具与 IDE 选择VSCode / DeepNote / Replitdocs/social.md 与 docs/tools.md 推荐VSCode Live ShareIDE 扩展实时共享代码会话DeepNote / CoCalc浏览器中的协作 Jupyter NotebookReplit浏览器协作 IDE适合纯 Python 场景VSCode作者首推的 IDE——开源、免费、快git 集成、调试器、终端一站式PyCharm则是大型代码库的强力备选 Windows 用户必装WSL 终端环境如果你用 Windows手册强烈建议安装WSLWindows Subsystem for Linux在 Windows 终端里跑完整 Linux 内核explorer直接打开虚拟文件系统code .直接拉起 VSCode。Jupyter 等 Web 服务也能通过浏览器正常访问。 实验追踪Wandb / Neptune / datalad 为研究代码留痕docs/pipelines.md 提醒GUI 点选和注释/反注释代码切换流程六个月后没人知道跑的是什么。Wandb / Neptune把命令、git hash、运行机器、指标一次性记录到中心化服务结果溯源零歧义Gigantum记录 notebook 执行日志datalad记录并文档化数据集操作 20 研究代码工具全书速查表#工具类别核心用途1git版本管理命令行代码版本控制2github代码托管分享与同步代码3conda环境管理包管理 虚拟环境4setuptools打包定义可 pip 安装的包5cookiecutter项目脚手架从模板创建项目6flake8 / pylintLinter检测代码风格问题7black代码格式化自动统一 Python 风格8vulture死代码检测找出未使用代码9jupytextNotebook 工具Notebook 与 Markdown 互转10pandas数据结构列式表格数据11xarray数据结构带命名维度的多维数据12collections标准库容器defaultdict / Counter 等13pytest单元测试测试套件编写与运行14argparse命令行解析命令行参数15shellcheckShell 检查bash 常见错误检查16make构建工具定义并执行计算 DAG17sphinx文档生成从代码生成 HTML 文档18readthedocs文档托管托管静态文档19VSCode Live Share协作实时共享编码会话20DeepNote / CoCalc协作 Notebook浏览器协作 Jupyter21Replit协作 IDE浏览器协作开发22VSCode / PyCharmIDE集成开发环境23WSL终端环境Windows 上的 Linux 子系统24Wandb / Neptune实验追踪记录机器学习实验25datalad / Gigantum数据溯源记录数据集与 notebook 操作 总结如何最快上手这份工具清单起步git conda cookiecutter先让项目骨架标准化日常black 格式化 flake8 检查 pytest 测试形成写—查—测闭环进阶make 组织流水线sphinx 出文档Wandb 留实验痕迹想获取完整源码与更多细节可以 clone 仓库git clone https://gitcode.com/gh_mirrors/code/codebook工具清单原文见docs/tools.md全书目录结构见docs/_toc.yml。把这套研究代码工具用起来你的科研编程效率会肉眼可见地提升 【免费下载链接】codebookThe Good Research Code Handbook项目地址: https://gitcode.com/gh_mirrors/code/codebook创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表