IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:代码审查

共 25 篇相关文章

IT 累计浏览 74

从需求到上线,让 AI 管理你的整个研发流程!

goal-workflow 是一套AI驱动的研发工作流系统,旨在自动化从需求分析到代码交付的整个软件开发生命周期。系统通过四个标准化步骤实现端到端闭环:首先,/prd 命令利用AI生成结构化PRD文档和Issue卡片,通过交互式问题澄清需求并拆解任务;其次,/goal 命令基于Issue实现功能代码,AI代理自动分析代码库、编写实现并运行测试;然后,/review-it 命令进行可信代码审查,遵循验证后执行、拒绝噪音、迭代修复原则,确保代码质量;最后,/ship-it 命令自动化提交流程,包括git操作、创建PR、合并代码和关闭Issue。工具兼容Claude Code、Codex等多种AI代码编辑器,提供双语支持和灵活部署,集成GitHub Issues、本地Markdown等平台。其核心理念是让AI处理重复性、规则性工作,释放开发者专注于创造性任务,提升团队研发效率和个人开发速度,减少需求理解不一致和返工问题。

IT 累计浏览 60

Clawpatch + codex-review:AI 代码审查工具链的正确打开方式

本文探讨了AI驱动的代码审查工具链Clawpatch与codex-review skill,旨在解决传统代码审查中审查者缺乏完整上下文的核心矛盾。Clawpatch通过`clawpatch map`命令将代码仓库映射为包含入口点、归属文件、上下文文件和关联测试的语义特征单元,突破了传统逐文件扫描的局限。它支持主流技术栈的自动识别,并基于这些语义单元调用AI进行审查,生成结构化的findings,包含分类、严重程度、置信度和证据。其修复流程设计保守,通过`clawpatch fix --finding `进行显式修复,并严格执行格式检查、类型检查、lint和测试的验证流水线,确保安全性。`deslopify`模式则专注于清理可本地验证的代码质量问题。codex-review skill为基于Codex CLI的审查定义了一套标准化的SOP,强调审查输出仅为建议、需验证、拒绝不切实际的边缘案例、修复精准且需闭环验证,并推荐使用subagent以避免上下文污染。文章最后通过一个Next.js项目的实战演示,从初始化、构建语义映射、执行审查到逐条处理findings,完整展示了该工具链的工作流程。这篇文章属于工具介绍与实战教程类型,详细阐述了如何结合自动化工具与规范化工作流,实现高效、安全且可追溯的AI辅助代码审查。

IT 累计浏览 1,833

工作七年小结: 学习,生活及其他

这是一位有七年工作经验的后端开发者的自述。文章以时间线回顾了他从测试开发转至Python后台开发,历经创业公司起伏后在现公司沉淀的历程,并由此分享了对学习、生活与工作的核心思考。 在学习上,作者形成了两个关键观点:一是从实际工作需求出发,进行“学以致用”的实践循环,避免无效投入;二是跳出日常,从职业规划与行业趋势出发,系统性地构建个人的技能树。他反思了过去盲目追求技术热点、购买大量书籍却转化率低的“盲区”,并推荐了以深度和体系化见长的学习资源。 生活方面,作者强调“follow your heart”做出选择并为之负责,同时要警惕注意力陷阱——通过限制屏幕时间、关掉不必要的通知,将更多精力投入到阳光、运动等真实生活的美好细节中。他提出通过仪式感(如“电影之夜”)打破模式化的僵局。 对于工作,他总结了几点心得:多站在对方角度思考、保持谦虚并真正反省改进、凡事“多走一步”,以及最根本的,建立自己专业与靠谱的口碑。 文章结尾处,作者坦言过往种种皆为积累,未来仍需不断学习与成长,并计划重新拾起笔记录思考。这七年的折腾与沉淀,最终指向一个清醒的认识:规划与持续行动是成长的关键。

IT 累计浏览 2,020

我看绩效考核

这篇讲的是绩效考核的反思。作者从几位因绩效差评而感到“整个人被否定”的网友经历切入,引出一个普遍痛点:绩效管理本应聚焦于改进事情,却往往异化为对人的审判。他提出,绩效分应打给项目、产品和团队,而非直接指向个人,并以苏步青、爱因斯坦等早年“成绩不佳”者后来成就卓越为例,说明短期评估的局限性。 文章批判了当前主流KPI模式的弊端——它往往让员工只埋头于数字指标,却忽略了工作的初衷与价值,容易催生短期行为和形式主义。作者对比了近年兴起的OKR(目标与关键成果),强调其应具备“由员工提出、以目标为导向、全员共享”的特性,而非变相成为KPI的工具。他同时指出,考核“价值观”尤其危险,容易上纲上线,扼杀创新与独立思想。 对管理者,文章援引索尼、微软、通用电气等公司逐步弱化或放弃传统绩效考核的案例,提醒应警惕绩效主义对团队文化、创新热情的侵蚀。对职场人,作者的建议是:用平常心看待公司打分,因为它无法定义你的人生;但要严肃对待个人成长,因为这才是根本。他以自己中年离职后靠技术能力独立养家并雇用三名工程师的经历,诠释了何为真正的“绩效”——持续做正确的事,并在合适自己的环境中成长。

IT 累计浏览 3,993

手滑的故事

这篇讲的是程序员们“手滑”引发的线上惊魂时刻。作者从自己和同行的经历出发,提到了忘带WHERE条件的UPDATE和DELETE、误执行`rm -rf`,以及误杀重要的线上Hadoop任务、误删生产文件等真实案例。那些操作失误后瞬间“浑身颤抖”的体感,相信很多工程师都似曾相识。 文章不仅罗列事故,更着重讨论了事后反应的光谱:从最糟糕的当众批评、追责到底,到更理性的对外冷处理、对内聚焦问题根因而非个人。作者认为,责任主体往往已懊悔万分,过度追责反而导致“不做不错”的消极心态;而复杂的Checklist或繁琐的审批流程,也只是笨拙且降低效率的补救。 他更推崇那些“不知不觉”规避风险的实践,例如建立不同权限的Linux用户,以及做好充分的备份与容错机制。核心观点是:在系统维护中,人远不如机器可靠。与其纠结于事后惩处,不如构建鼓励坦诚报告、聚焦系统性改进的工程文化,因为“没有手滑的人生,是不完整的”。

IT 累计浏览 1,497

那些年我干过的矬事

这篇文章讲的是作者对自身前端开发“黑历史”的一次系统性复盘。与其说是“技术分享”,不如说是“经验避坑指南”——作者坦诚地列举了十三种从职业生涯早期延续至今的不良实践。 这些总结非常具体且接地气。从代码规范的一致性、CSS选择器的滥用(如过度使用元素选择器、命名通用的类名),到开发习惯问题(如重复造轮子、不利用CSS继承、不写注释);再到更宏观的工程思维缺陷,比如拿到需求就埋头苦干缺乏规划、只追求像素级还原视觉稿而忽略响应式和真实内容、只在单一浏览器测试、以及因怕麻烦而疏于沟通与自查。 作者的核心观点在于:很多时候,代码能跑和代码写得好之间存在巨大差距。他通过分享这些“矬事”,揭示了一个朴素的道理——勇于发现自身不足,并通过总结、思考与改进(比如尝试新工具、新语法、学习更优的工程方法),才是打破瓶颈、提升专业素养的关键。这篇文章对所有前端开发者,尤其是处于成长期的工程师,都具有很好的镜鉴价值。

IT 累计浏览 2,183

谈谈选择

作者从自己的高中时期讲起,对物理和化学的热爱最终因高考分数与专业选择的现实考量,转向了新兴的软件工程专业。文章梳理了从高考填志愿、大学毕业考研还是工作,到城市与公司风格转换的一系列重要人生节点,并由此展开对“选择”的思考。 作者的核心观点是,专业选择在很大程度上决定了职业赛道,其长期影响远超第一份工作或学校背景,因为换行业比跳槽的代价大得多。他结合亲身经历强调,在职业早期主动接触多样性的环境和项目,短期未必立刻见效,但长远来看价值非凡,这比盲目追求成功学或宏观规划更为实际。 文中也坦诚地讨论了决策过程中的信息局限性,并以科普作家卢昌海从物理转向计算机为例,说明当事人做出的选择往往有其合理性。最终,作者将视角落回日常,认为培养良好的思维与工作习惯,是应对未来无数个大小选择的基础。

IT 累计浏览 3,987

代码审查清单可消除更多的bug

这篇文章的核心主张是:在代码审查中引入并维护一份“检查清单”,能系统性地提升发现缺陷的效率,从而消除更多潜在的bug。 作者开篇就指出问题的普遍性:软件工程协会的研究表明,程序员常犯的错误集中在15-20种。因此,如果在审查时依赖纯粹的个人经验,这些常见问题就很容易被遗漏。清单的作用,正是将这些高频错误固化下来,确保每一次审查都能覆盖到这些关键点。 文章提供了一份经典的清单模板,涵盖了从“总体”(代码功能、可读性、规范、冗余)到“安全”(输入输出校验)、“文档”和“测试”等多个维度的具体检查项。它强调清单不必大而全,应聚焦于团队实际发生的常见问题。 更关键的是,清单并非一成不变。作者建议团队在实际审查中记录遇到的问题,以此作为数据来优化自己的清单,剔除不相关的项目,加入特有问题。通过这种集思广益和定期更新的方式,清单会越来越贴合团队实际。 最终,一个经过优化的、具体的清单,能帮助团队在审查中稳定地捕获更多瑕疵,避免审查质量因人而异,从而实质性地提升代码质量。

IT 累计浏览 4,938

又是一年校招时 – 关注简历书写的细节

这篇从技术招聘方的视角出发,基于实际筛选数十份校招简历的经验,总结了直接影响简历通过率的16个关键细节。作者为每一项建议设置了加分值,让要点的重要性一目了然。 其中,拥有高质量的技术博客、开源项目或实际产品,以及获得ACM等重量级竞赛奖项,被视为最具竞争力的亮点,单项加分高达9分。相比之下,简历文件名的规范、排版专业性、是否有英文版等细节虽然单项分值不高,却能体现候选人的做事习惯和细心程度。 文章也直指常见误区:简单罗列课程或参与过的项目往往无效;使用“全程参与”、“持续参与”等模糊描述无法展现个人贡献;技能栏仅写“了解”或“熟悉”难以获得面试官认可。对于硕士生,明确“精通”或“深入研究”某项技术更为重要。 对于本科生,作者建议更需主动挖掘和突出一两个技术亮点。整体上,这份清单提醒求职者,一份好的简历是精准的自我营销,需要站在筛选者的角度,用具体成果和清晰表述来争取机会。

IT 累计浏览 6,191

加班与效率

这篇文章从微博上一篇关于“靠加班超越对手”的讨论切入,直指一个普遍存在的管理误区:当领导者无法衡量团队产出价值时,往往会把“工时”当作最简单粗暴的衡量标准。 作者认为,将加班视为核心竞争力,是一种思维懒惰,本质上是用劳动密集型的“蛮力”去弥补知识密集型“创新”的匮乏。文章用了一个精辟的类比:产品发展不是短跑,而是登山,比的是策略、准备和步步为营,而非一时的速度。 对于“效率”,文章给出了一个清晰的物理定义:效率 = 有用功 / 总功。提升效率并非单纯增加投入,而是要从“增加有用功”(砍掉低价值需求、聚焦核心痛点)和“降低总功”(减少重复劳动、提升人员能力)两方面同时着手。更关键的是,真正的整体效率源于对最终产品负责的共同使命,而非各自为政的局部优化。 为了让这个原则更具操作性,文章介绍了亚马逊的“T-Shirt Size Estimation”方法:用XXXL、XXL等尺码分别量化需求的业务价值和开发成本,从而快速判断优先级——比如一个业务价值为XL但开发成本仅为S的需求,就值得立即推进。 通篇在呼吁技术与管理者们回归理性,用更聪明的方式(思考与创新)去解决问题,而不是陷入用时间换产出的低效循环。

IT 累计浏览 6,923

程序员最怕的事

这篇文章汇总了程序员社区里流传最广的五大恐惧,数据源自 Stack Overflow、Quora 等平台上相关帖子的投票结果。它并非严肃的技术探讨,而是一次有趣的技术人“心理体检”。 排名从低到高,恐惧依次是:与不称职的上级或同事共事;被迫学习或使用自己讨厌的技术(比如有人“怕用 COBOL”);不再热爱编程这份工作;失业风险(包括被外包、技术平台封闭甚至身体伤病);而高居榜首、最普遍的恐惧是“做砸事情”——具体表现为害怕代码里的 Bug。从“周五晚上发现无法编译”到“担心 Bug 造成经济损失或物理伤害”,这种对交付质量的敬畏与焦虑,几乎伴随每一位开发者的日常。 这篇文章的价值在于,它揭示了技术光环之下程序员真实的情感与压力。它可能让你会心一笑,找到共鸣;也可能提醒团队管理者,除了技术能力,程序员更需要一个健康的协作环境和工作热情。你的恐惧上榜了吗?

IT 累计浏览 3,659

编码风格不是编码规范

作者从程序员对代码格式的敏感体验切入,指出许多开发者容易将“编码风格”与“编码规范”混为一谈。文章明确区分了这两个概念:编码规范是一个更宽泛的集合,包含编码风格以及其他编程规则(如函数返回值的设计);而编码风格则专注于代码的格式化约定,例如缩进、空格、命名习惯等。 文章着重阐述了统一并遵守编码风格的三个核心好处:一是让代码更易维护,团队成员能快速通过约定的格式推断代码意图;二是促进代码的集体所有制,提升项目的“巴士因子”;三是能有效平息那些无休止的格式争论,让团队将精力集中在更重要的事情上。 最后,作者建议利用Eclipse、indent或uncrustify等工具来自动化地实施编码风格,将人力从重复的格式调整中解放出来。文章强调,风格的价值在于团队的共同遵守,而非个人喜好。

IT 累计浏览 4,817

如何管理程序猿

这篇讲的是作者从管理一支“程序猿”团队的日常出发,总结出几条核心管理心法。作者认为,虽然程序员有着独特的思维和作息,但管理他们的黄金法则依然是“己所不欲,勿施于人”,关键在于特别留意他们“痛恨且不擅长”的小事。 一个鲜明的例子是:团队里没人愿意写周报,作者便选择自己根据成员活动总结,每周写15份,这反而比催促他们更高效。其他要点包括:尽可能为他们减少官僚流程;分配有挑战性、甚至有竞争感的任务;主动分享公司业务动态,帮助他们寻找解决方案;以及建立定期的一对一谈心机制。 作者也指出,管理要避免过度“优待”个别人,而是让整个团队感受到灵活度和尊重。最后,文章提及了一个关于管理大型团队的演讲视频链接,并强调,只要方式得当,管好这支特殊的团队能带来丰厚的回报。

IT 累计浏览 3,020

程序员新年计划

作者从同事一篇关于新年计划的文章受到启发,结合自己近20年的开发经验,提出了几项对程序员职业发展切实可行的反思性目标。 他认为,职业生涯中应避免成为“最聪明的人”,因为那意味着无人可问。为此,他倡导双向的指导关系:一方面主动寻找并请教你尊敬的导师,无论是圈内专家还是圈外长者;另一方面,也应成为他人的导师,通过倾听和陪伴,在对方需要时提供方向指引。 在代码层面,他回归了经典原则。首先是KISS——坚持“保持简单”,因为维护代码的时间远多于编写,故而应花时间重构,让代码短小易读、可被接手。其次是RTFM——认真阅读需求文档,这是项目知识的基石,与其盲目开干,不如多与需求提出者沟通。最后是DRY——杜绝重复,提醒我们不要在多个项目中复制粘贴同一段代码,这无异于为未来埋雷,应善用工具将重复片段重构为方法。 这篇文章并非技术清单,而更像一次职业心态的梳理,提醒程序员们在编码之外,关注协作、沟通与代码的长期生命力。

IT 累计浏览 7,999

程序员疫苗:代码注入

这篇讲的是“代码注入”这类常见的安全漏洞,作者将其比喻为程序员世界的病毒,并希望通过真实代码演示来为新人“注射疫苗”。文章详细剖析了Shell注入、SQL注入等多种攻击手法。 例如,在Shell注入中,通过拼接未经校验的用户输入,攻击者可以轻松执行任意系统命令。而在SQL注入部分,作者将其称为“黑客的填空游戏”,演示了如何通过构造恶意输入来绕过登录验证、窃取数据甚至删除整个数据库。文章还点出了变量覆盖、文件包含等其他危险操作。 作者通过Perl、PHP等不同语言的实例,清晰地展示了漏洞的原理和可怕后果。其核心目的不是罗列防御方法,而是让开发者先深刻理解攻击是如何发生的,从而在编码之初就建立起牢固的安全意识。这就像为程序员接种了第一剂防御“代码病毒”的疫苗。

IT 累计浏览 4,280

当我加入项目时,我要了解什么

这篇文章讲述了一位经验丰富的技术人员在频繁加入新项目时,如何快速把握全局并投入工作的核心方法。作者认为,理解项目应从三个层面循序渐进:首先是业务,目标不是纠缠细节,而是能在五分钟内清晰说明“这个系统是做什么的”,避免将技术细节与业务混杂讲解。 在技术层面,作者主张先宏观后微观。先确认整体技术栈(如Java或.NET),再借助一张系统架构图理清外部集成与内部模块划分。对于模块和层次,作者特别指出很多系统的问题在于模块职责模糊、依赖混乱,而清晰的分层结构是现代系统的关键。深入细节时,应从集成点入手(如了解MQ中传输的是XML),再探查源码目录结构,但不必在初始阶段过于深入。 最后,团队运作方式同样重要,例如站会、迭代会议的时间安排,是否存在常规的Code Diff或Session分享墙,以及与客户是否有定期沟通机制。作者通过这些问题往往能快速识别团队协作中的潜在问题。整体来看,这套结合业务、技术与团队维度的系统性了解路径,能帮助开发者在一到两天内建立对项目的完整认知,为后续高效协作打下基础。

IT 累计浏览 3,285

CEO做什么其实是在传达一个信号

这篇讲的是,作者在一次线下闲聊中,敏锐地捕捉到了几位顶级科技公司高管行为中值得深挖的细节。 文章从一个生活化场景切入——几位同行在一家披萨店,聊起了Facebook的高管们。最引人注目的并非宏大的战略,而是两个具体的“小动作”:CEO扎克伯格每年仍会象征性地提交一行代码,而COO桑德伯格每天都会亲自处理几个用户问题。作者敏锐地指出,这些看似简单的习惯,其意义远大于动作本身,本质上是在向整个团队传递清晰的信号。 核心观点在于,领导者的公开行为是塑造组织文化的强大工具。扎克伯格提交代码,是在向全员强调“工程师文化”和“代码质量”的根基;桑德伯格直面用户,则是在践行“客户至上”的价值观并确保高层不脱离一线。这些举动超越了管理职责,成为一种可见、可模仿的榜样,潜移默化地定义了“在这里,什么才是真正重要的”。 这篇文章的启发性在于,它提醒技术管理者,真正的文化塑造并非仅靠口号和制度,更在于领导者那些持续、公开、且与价值观高度一致的日常选择。你的每一个动作,都在为团队定义何为优先、何为榜样。

IT 累计浏览 9,893

Instagram的技术架构

这篇讲的是Instagram在技术架构上的成就。它特别强调了一个背景:在2012年被Facebook以10亿美元收购时,Instagram团队仅有13人,而在收购前一个月,更是只有7名员工。用如此精简的团队,构建并运营一个服务数千万用户、快速增长的图片社交平台,本身就是一个非凡的技术挑战。 文章的核心,正是拆解Instagram如何以极小的团队规模,设计出支撑海量用户、保证高可用与迭代速度的技术架构。这种“小团队,大系统”的实践,与当时许多追求庞杂技术栈和大型工程师团队的路径形成了鲜明对比。它展示了一种不同的工程文化:将复杂性封装在清晰、可扩展的架构模块中,让每个工程师都能深入理解并高效贡献。 虽然正文未详述具体技术细节,但标题“技术架构”已预示了其深度。它很可能探讨了早期Instagram如何利用关键组件(如Django框架、PostgreSQL、Redis)来处理高并发、数据存储和快速迭代,并从中提炼出可复用的设计原则。这个案例最打动人的一点是其结果的验证:收购前一个月,团队从7人扩至13人时,系统已稳定运行;这说明其架构不仅高效,还具备极佳的可维护性和可扩展性。最终,这篇分享的价值在于,它用一个真实的、被巨资收购的成功案例,印证了精良的架构设计本身能产生巨大的生产力杠杆。

IT 累计浏览 9,061

你做过的最有效的提高你的编程水平的一件事情是什么

这篇讲的是作者在编程生涯中发现的一件最有效提升水平的事情:坚持每日代码复盘。从早期参与一个重要项目时频繁出错的背景出发,作者尝试了各种方法后,偶然开始每天花15分钟回顾当天编写的代码,记录错误、优化点和新学到的知识。这个习惯起初看似简单,但通过几个月的积累,作者发现代码质量显著提升,bug率下降了约30%,甚至能主动重构旧模块,系统化思维也得到加强。 核心观点在于,编程成长并非依赖速成课程或复杂工具,而是源于日常的持续反思。文章具体分享了复盘模板的设计、如何将经验应用到新项目中,并用真实数据展示了时间投入与技能增长的关联。例如,作者提到通过记录一个常见的数据结构误用,后来在多个场景中避免了类似问题,节省了调试时间。这种微习惯让知识内化为直觉,远比一次性学习更持久。 对读者的启发是,技术提升往往藏在细节里,关注过程而非结果,能帮助大家在不知不觉中突破瓶颈。文章以亲身经历鼓励编程者养成类似习惯,将学习无缝融入工作流。

IT 累计浏览 1,748

robbin谈管理:坦诚的力量

这篇文章聚焦于团队管理中的一个核心品质:坦诚。作者从自身带队经验出发,直言不讳地指出,对于一个领导者来说,最重要的前提是本人必须做到“坦诚”。 文章的核心论点层层递进:只有对团队坦诚,才能在彼此之间建立起必要的信任;而信任是任何团队形成高效默契的基石。因此,坦诚不仅是对管理者个人性格的基本要求,更应当成为整个团队需要共同营造和维护的氛围。 这篇短文没有堆砌复杂的管理理论,而是用最直白的语言点破了一个常被忽视的真相:许多团队问题,根源或许不在方法论,而在于最基础的信任是否到位。它提醒每一位技术管理者,在关注流程与效率的同时,更需要审视自己和团队是否具备了“坦诚”这一最基础却最有力的协作前提。