[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-post-lightweight-code-review-zh-CN":3,"blog-adjacent-lightweight-code-review-zh-CN":28,"blog-related-lightweight-code-review-zh-CN":65},{"id":4,"slug":5,"title":6,"excerpt":7,"content":8,"cover":9,"tone":10,"author":11,"publishedAt":12,"updatedAt":12,"readingMinutes":13,"featured":14,"tags":15,"category":19,"seoSettings":27},41,"lightweight-code-review","小团队的代码评审怎么落地","评审不是找茬，而是让改动在合并前被第二个人理解。规模小也要有流程。","\u003Cp>我们团队长期只有几个人写代码，早期基本不评审，谁写完谁合并。结果是一次数据库字段改动影响了三个模块，直到客户反馈才发现。\u003C\u002Fp>\n\u003Ch2>轻量流程\u003C\u002Fh2>\n\u003Cp>所有改动走分支，合并前必须有一位同事看过。哪怕只花十分钟，也要有人点确认。\u003C\u002Fp>\n\u003Cp>评审重点放在三件事：边界条件、异常处理、对现有功能的影响。格式问题交给工具。\u003C\u002Fp>\n\u003Cp>超过四百行的改动先拆分，评审质量随行数迅速下降。\u003C\u002Fp>\n\u003Ch2>两个习惯\u003C\u002Fh2>\n\u003Cp>提交说明写清为什么改，不只写改了什么。三个月后回看，动机比细节更重要。\u003C\u002Fp>\n\u003Cp>评审意见用提问的方式表达，比如“这里如果并发会怎样”，比直接下结论更容易被接受。\u003C\u002Fp>\n\u003Cp>评审的成本是每天二十分钟，收益是避免一次深夜回滚。这笔账在任何团队都算得过来。\u003C\u002Fp>","","blue","佳益方圆团队","2026-06-07T12:23:00+08:00",1,false,[16,17,18],"代码评审","团队","工程实践",{"id":13,"parentId":20,"slug":21,"name":22,"description":23,"icon":24,"cover":9,"tone":10,"kind":25,"sortOrder":26,"count":20},0,"engineering","技术专栏","架构设计、性能优化、AI 集成与跨端方案等一线技术实践，由研发团队持续分享。","cpu","article",60,{},{"previous":29,"next":47},{"id":30,"slug":31,"title":32,"excerpt":33,"content":9,"cover":9,"tone":34,"author":11,"publishedAt":35,"updatedAt":35,"readingMinutes":13,"featured":14,"tags":36,"category":40},20,"after-learning-to-say-no","学会说不之后","拒绝不合适的机会，短期看是损失，长期看是把时间还给了真正重要的事。","teal","2026-06-09T11:10:00+08:00",[37,38,39],"创业","决策","边界",{"id":41,"parentId":20,"slug":42,"name":43,"description":44,"icon":45,"cover":9,"tone":10,"kind":25,"sortOrder":46,"count":20},6,"founder-notes","创业手记","创始团队在经营、管理与产品上的思考，记录一家软件公司的成长过程。","pen-tool",10,{"id":48,"slug":49,"title":50,"excerpt":51,"content":9,"cover":9,"tone":52,"author":11,"publishedAt":53,"updatedAt":53,"readingMinutes":13,"featured":14,"tags":54,"category":58},61,"requirement-priority","需求优先级：谁喊得响不等于重要","优先级应该由影响范围和不可替代性决定，而不是由提出者的职位决定。","indigo","2026-06-05T12:23:00+08:00",[55,56,57],"需求","优先级","项目管理",{"id":59,"parentId":20,"slug":60,"name":61,"description":62,"icon":63,"cover":9,"tone":10,"kind":25,"sortOrder":64,"count":20},2,"product-thinking","产品思维","需求分析、用户体验与产品设计方法论，以及从业务问题到产品方案的思考过程。","lightbulb",50,[66,77,88],{"id":67,"slug":68,"title":69,"excerpt":70,"content":9,"cover":9,"tone":71,"author":11,"publishedAt":72,"updatedAt":72,"readingMinutes":13,"featured":14,"tags":73,"category":76},30,"integration-api-pitfalls","企业系统集成：接口对接最容易踩的五个坑","接口文档写得再全，真正对接时仍然会卡在字段约定、超时和重复推送这些细节上。","cyan","2026-10-17T09:00:00+08:00",[74,75,18],"系统集成","接口",{"id":13,"parentId":20,"slug":21,"name":22,"description":23,"icon":24,"cover":9,"tone":10,"kind":25,"sortOrder":26,"count":20},{"id":13,"slug":78,"title":79,"excerpt":80,"content":9,"cover":9,"tone":71,"author":11,"publishedAt":81,"updatedAt":82,"readingMinutes":59,"featured":83,"tags":84,"category":87},"why-enterprise-systems-age","为什么企业系统会在三年后开始“老化”","系统上线时功能齐全，三年后却处处别扭。问题往往不在代码，而在交付时被忽略的那些变化。","2026-10-16T09:30:00+08:00","2026-10-18T15:58:14.648+08:00",true,[85,86],"系统演进","架构设计",{"id":13,"parentId":20,"slug":21,"name":22,"description":23,"icon":24,"cover":9,"tone":10,"kind":25,"sortOrder":26,"count":20},{"id":89,"slug":90,"title":91,"excerpt":92,"content":9,"cover":9,"tone":10,"author":11,"publishedAt":93,"updatedAt":93,"readingMinutes":13,"featured":14,"tags":94,"category":98},31,"idempotent-design-basics","幂等设计：重复提交不只是用户手抖","网络重试、消息重投、用户连点，都会让同一个请求到达多次。幂等应该设计在接口里。","2026-10-05T10:13:00+08:00",[95,96,97],"接口设计","幂等","可靠性",{"id":13,"parentId":20,"slug":21,"name":22,"description":23,"icon":24,"cover":9,"tone":10,"kind":25,"sortOrder":26,"count":20}]