当前位置: 首页 > 科技观察

请不要让程序员在黑暗中摸索

时间:2023-03-19 18:02:34 科技观察

不知道大家有没有玩过魔兽争霸、X-COM、文明帝国、红色警戒等策略类游戏。这些游戏使用所谓的“战争迷雾”。刚进入游戏时,每个玩家的地图都笼罩在黑暗之中,唯一的前进方式就是不断探索。随着我们继续移动,地图变得越来越明显。这种策略的缺点是玩家看不到周围的危险、障碍和机会。每一次成功都需要一点点运气。是不是觉得这一幕有些眼熟?《战争迷雾》完美地描述了开发者的工作状态。他们总是被要求修复特定的一段代码,但没有告诉他们任务的具体内容,这无异于让他们在黑暗中摸索。对于开发者来说,看到“全游戏地图”是很有必要的。清楚地了解大局有助于他们做出正确的决定。以下是他们需要知道的问题:为什么要创建此功能?它为客户提供了哪些便利?围绕这个功能的代码经历了怎样的开发过程?此功能会影响应用程序的哪些其他部分?这会影响业务的其他部分吗?我们如何衡量这个项目的成功(或失败)?开发者只有掌握了整个框架,才能有针对性的开始工作。他们在行动前经过深思熟虑的决定对项目的成功非常有帮助。它还具有巨大的激励作用。JoeStump总结道:开发人员往往不得不自己找出任务背后的问题,这意味着对于给定的对象,开发人员可能并没有真正去思考这个想法。但如果负责任地做,开发人员可以沉迷于思考这个问题,因为他们的工作尤其更依赖于商业上的成功。例如,如果我是后端开发人员,你告诉我实现一些API端点,我需要考虑你为什么需要这些端点。这突出了理解每个项目背后的目的和使命的重要性:目的:我们为什么要做这个?任务:目标是什么?它在多大程度上被认为是完整的?当目的和使命得到理解时,开发人员将成为规划过程中有价值的合作伙伴。他们可以在您踩到他们并付出高昂代价之前预见到一些潜在的“地雷”。在一篇杂志文章中,PaulBoag描述了将开发人员排除在某些相关会议之外的危险:在Digg的全盛时期,DanielBurka(Digg的首席设计师)和JoeStump(其首席开发人员)就Digg按钮举行了一次会议。丹尼尔想改变它的设计,因为从他的角度来看,并没有太大的改变。但对乔来说,他发现这个小小的设计会对站点的性能产生很大的影响,迫使Digg因为这样一个按钮升级其处理能力和服务器架构。您可以做什么首先,我们应该负责任地参与有关产品、支持和工程规划的会议讨论。会议结束后,我们可以创建接下来需要的相关规范文件。经理不是将军,开发人员不是士兵有时,经理表现得好像项目是某种最高机密,只提供一些“需要了解的基础知识”。但这种保护不会带来更好的代码、更受欢迎的项目或增加的销售额。与其让开发者在黑暗中摸索,不如邀请他们参与到整体的战略讨论中。