ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

kotlin-footguns工程方法论终极清单:判别性实验、战报式Changelog与Commit考古学

kotlin-footguns工程方法论终极清单:判别性实验、战报式Changelog与Commit考古学 【免费下载链接】kotlin-footgunsBattle-tested agent skills mapping the footguns of Kotlin, Compose Multiplatform and the desktop JVM — mined from a production music app, not from documentation.项目地址https://gitcode.com/gh_mirrors/ko/kotlin-footguns点击查看免费下载kotlin-footguns 是一套从生产级跨平台音乐应用 SimpMusic 中挖掘出来的 Kotlin 与 Compose Multiplatform 实战技巧库收录了 224 个踩坑地图式技能。其中工程方法论组沉淀了三条最值钱的做事原则判别性实验、战报式 Changelog 和 Commit 考古学。它们能帮你少走弯路、少烧构建、少踩已经有人付过学费的坑。一、kotlin-footguns 是什么先看懂这张踩坑地图 ️kotlin-footguns 的每个技能都是一份独立的SKILL.md而且最大的章节永远是Traps陷阱——某个技术在实际开发中具体会怎么翻车以及如何在你自己的代码树上验证失败、验证修复。来源不是官方文档而是三年生产环境的崩溃报告、失败发布和用户反馈每个文件控制在 60–140 行两分钟就能读完每条结论都配了验证命令让你能自查而不是照单全收想看完整索引打开 CATALOG.md想了解整体背景读 README.md。本清单的主角是工程方法论组N 组共 7 个技能。二、判别性实验先数变量再动手改代码 适用场景两个几乎一样的东西一个正常工作、一个坏掉了同一个问题你已经试过两三次修复都没用。新手最常见的坏毛病是按最强的猜想去改改完验证不行再换下一个猜想。这个循环代价极高每次猜错都要付出一次完整的验证成本而猜错时你什么信息都没得到。判别性实验的思路是先数一数两边还有几个变量没对齐只要大于 1就不允许你写修复。先设计一个交换或互换实验让一次构建就能砍掉一半的嫌疑原因。真实案例一个页面头部有两个控件共用同一个视觉特效——圆按钮没有效果长条药丸控件有效果。前四轮都在换形状、去包裹层、喂真实内容全错了。第五轮把两个控件的位置互换特效跟着药丸走、而不是跟着位置走。位置这一个变量被一次排除剩下的才是控件自身几何形状的问题。几条可落地的口诀动手前先写两句话如果特效跟着控件走那么……如果它留在原地那么……。写不出来说明这个实验没有区分度别花冤枉轮次交换时只动两个位置别顺手改缩进、别改名、别整理——那就不再是一次干净的交换了实验代码要打个标记清理时别把还没读数的实验删掉只改善症状、却说不清为什么那是第二份待解释的观察不是可以上线的修复完整规则见 skills/run-discriminating-experiment-first/SKILL.md。三、战报式 Changelog把试过又否掉的东西写下来 Commit message 只说改了什么很少说试过哪些、为什么放弃、什么时候才能拆掉这个临时方案。这些信息没地方放最后只能由一个不知道它存在的人重新踩一遍。kotlin-footguns 提倡的做法在仓库根目录维护一个按日期记录条目的 markdown 文件每进一个不熟的领域之前先读它。一条有用的战报要带四样东西Symptom症状——别人当时看到了什么用他们自己的话说Mechanism机制——为什么会这样讲到让修复说得通的那个层面What was ruled out否掉了什么——试过但不管用的合理替代方案明确点名The exit condition退出条件——上游或平台发生什么变化后这条才可以删掉最高价值的部分是否掉了什么也是赶时间时第一个被砍掉的。没有退出条件的临时方案会永远留在原地永远算必需。几条关键纪律条目要和代码改动一起落别想着之后再补——那条永远等不来的后续提交本身就是陷阱查问题时先搜这个 markdown再搜 commit message满足退出条件的条目应该删除而不是原地归档模板与自查命令见 skills/changelog-as-war-story/SKILL.md。四、Commit 考古学别被 git 历史骗了 ⛏️历史是那些正忙着、还不知道什么才重要的人写下的证据。三条红旗占了从历史里得出错误结论的大部分红旗 1没有正文的 commit。标题会同时说少和说多文件统计--stat才是它真正的摘要。比如一条end of friday标题什么都没交代却可能是历史中改动最大的提交之一一条refactor code folder标题夸大了重构其实只是搬文件。红旗 2子仓库指针更新。当一部分项目放在子仓库submodule里推进它的 commit 在统计里只显示 1 个文件、1 行改动真实内容全藏在另一侧仓库的那两个指针之间普通历史命令在这里看不见它们。红旗 3压扁的合并。merge 的标题只是分支名不写决策。一个来回一周的分支抵达时只剩一行若先被 rebase 或 squash中间的推理根本不在这个仓库里。几条保命的习惯想引用哪个 commit就读一遍它的统计一条命令的代价别把一行改动读成很小的改动子仓库指针、生成文件、锁文件都会这样blame 落到一次搬移动画上时别停先跟着文件穿过搬移别只搜默认分支也别只按当天用过的词去搜方法详见 skills/commit-archaeology-red-flags/SKILL.md。五、同组的三块补强方法论 工程方法论组还有几个和上面三条互相成就的技能值得一起带走空实现不是平台限制——多平台项目里一个空的、直通的平台实现通常意味着还没人写而不是平台做不到。判断前先查依赖的解析变体和源集。见 skills/noop-actual-not-platform-limit/SKILL.md。从下往上读构建日志——去底部找结论再去第一个错误标记找原因永远别用一个固定行数的窗口去截日志。见 skills/read-build-logs-bottom-up/SKILL.md。这套仓库自己的写作风格——描述里同时带上触发场景和读者正盯着的错误症状Traps 章节占大头验证命令要真跑过。见 skills/writing-agent-skill-house-style/SKILL.md。六、如何上手这套工程方法论清单 打开 CATALOG.md定位 N 组工程方法论 / 纪律共 7 个技能挑你当前正在卡的场景修不好同样的 bug → 判别性实验要进一个不熟的领域 → 战报式 Changelog想搞清楚为什么代码长这样 → Commit 考古学每个技能末尾都带Verifying it自查命令对着你自己的仓库跑一遍把结论落到自己树上kotlin-footguns 的价值不在教你某个 API 怎么用而在把这些已经用崩溃报告、失败发布和评审轮次付过学费的教训提前摆到你面前。三条方法论记住一句话就够先数变量再动手、把否掉的东西写下来、读历史前先怀疑它。赞分享【免费下载链接】kotlin-footgunsBattle-tested agent skills mapping the footguns of Kotlin, Compose Multiplatform and the desktop JVM — mined from a production music app, not from documentation.项目地址https://gitcode.com/gh_mirrors/ko/kotlin-footguns点击查看免费下载相关推荐kotlin-footguns桌面JVM原生代码终极清单JNA绑定陷阱、soname冲突与内存占用排查kotlin footguns桌面JVM原生代码终极清单JNA绑定陷阱、soname冲突与内存占用排查 kotlin footguns 是一套专为 KotliDevilution 逆向工程实录Diablo 1 源码考古的六大利器与完整方法论Devilution 逆向工程实录Diablo 1 源码考古的六大利器与完整方法论 1996 年发售的《暗黑破坏神》Diablo 1在 2001 年打完最游戏开发逆向工程gh_mirrors/cs/C-Sharp中的考古学算法文物识别实现gh_mirrors/cs/C Sharp中的考古学算法文物识别实现 引言 在考古学研究中文物识别是一项至关重要的任务。传统的文物识别方法往往依赖考古专家的示例工程科学计算创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表