Distrust

《极地疑城 Distrust》是一款2019年发布的策略类游戏。

一架直升机坠毁,一群探险家被困在北极研究站附近。幸存者将不得不抵抗死霜和饥饿的噩梦。当他们试图逃离漫长而黑暗的极地之夜的危险,并找到通往废弃空间站庇护所的道路时,他们所做的一切都陷入了一个噩梦般的[……]

阅读全文

Lethal League Blaze 1

《致命联盟:烈火 致命联盟:烈焰 リーサルリーグ ブレイズ Lethal League Blaze》是一款2019年发布的格斗游戏,最大支持4人同屏游戏。

《致命联盟火焰》是一场激烈的、高速的球赛,有着独特的角色、看不见的声音,而且没有那种软弱的东西。在Shine[……]

阅读全文

Dead in Vinland True Viking edition

《文兰岛上的死亡 Dead in Vinland – True Viking edition》是一款2019年发布的动作冒险游戏。

《死在维兰》是一款生存/管理游戏,融合了RPG和冒险元素,讲述了一个维京人家庭在一个神秘的岛屿上竭尽全力生存的故事。这个“真正的维[……]

阅读全文

Professor Lupo and his Horrible Pets

《卢波教授和他的可怕宠物 Professor Lupo and his Horrible Pets》是一款2019年发布的动作冒险游戏。

卢波教授是一名太空科学家,他一直在极光空间站上环绕银河系旅行,收集了最令人印象深刻的外星人收藏:他的可怕宠物。乍一看,这些外[……]

阅读全文

The Ambassador Fractured Timelines

《使者:破碎的时间线 The Ambassador: Fractured Timelines》是一款2020年发布的动作冒险游戏。

大使:断裂的时间线是一个以停止时间的能力为中心的双棒奇幻射击游戏。你将扮演格雷戈,一名新招募的永恒团契成员,一名时间大使。就在你正[……]

阅读全文

Through the Darkest of Times

《走过至暗时刻 Through the Darkest of Times(スルー ザ ダーケスト オブ タイムズ)》是一款2020年发布的策略类游戏。

柏林,1933年1月。“阿道夫·希特勒是议长!”我们都知道这一信息将导致什么,无法形容的恐怖和苦难将降临世界[……]

阅读全文

Pool Pro GOLD

《桌球完全黄金版 Pool Pro GOLD》是一款2020年发布的体育类游戏。

特征:•是的,非常经典的8球!•任天堂交换机上的泳池大厅™!•逼真的游戏体验!•各种游戏模式!•漂亮的设计!•专业比赛!•不同的提示!描述:享受[……]

阅读全文

Zero Strain

《零应变 Zero Strain》是一款2020年发布的射击类游戏。

Zero Strain是一款快节奏的射击运动员,设置在一系列自上而下的竞技场中,在这些竞技场中,进攻和防守的战略运用对于战胜每一次挑战至关重要。MOBA元素与疯狂的射击动作相结合,在霓虹线框演[……]

阅读全文

Capcom Fighting Collection

《Capcom Fighting Collection カプコン ファイティング コレクション》是一款2022年发布的动作冒险游戏,最大支持2人同屏游戏。

Capcom最受欢迎的十款街机游戏集于一个史诗系列!标志性系列中包含了各种各样的标题,如街头斗士和黑暗[……]

阅读全文

Admin Avatar

代码优先与产品优先

程序员可以分成两种:一种程序员更关心代码,另一种程序员更关心产品。

我称前者为”代码优先”程序员,后者为”产品优先”程序员。

“代码优先”程序员痴迷于代码的架构、关注使用什么工具、库和语言,有多少测试覆盖率,诸如此类的问题。

如果达到完美的代码抽象,或者使用了最新的语言功能,再或者删除了用不到的代码,”代码优先”程序员就会很兴奋。他们真的喜欢他们编写的代码,在他们眼里,代码本身就是目的。

“产品优先”程序员也关心代码,但只是把它作为达到目的的一种手段。对于他们来说,代码是建筑物的脚手架和钢梁,而不是最终产品。最终产品是产品本身,而不是代码。

他们认为,重要的是,产品是不是真正解决了问题?每样东西是否正常工作?人们喜欢用这个产品吗?”产品优先”程序员喜欢构建和发布,喜欢看到用户使用他们构建的东西。在他们眼中,产品才是目的。

大型软件公司里面,你会遇到很多”代码优先”程序员。他们看重代码是否合乎规范,有没有拼写错误,是不是意大利面条式的代码,会不会带来技术债务。如果达不到代码审核的严谨标准,就会要求重构代码。

我总是很惊讶地发现,有那么多程序员认为,”代码优先”就是他们追求的目标。对于项目原型,他们会问:”单元测试覆盖率怎么样?” 、”有没有用到热门的新技术 X?”、”会带来很多技术债务吗?”。

可是,我们现在做的只是项目的原型,迟早会重写所有代码,所以上面的这些问题,在这个阶段是无关紧要的。因为我们甚至还没有认定,现在的代码就是解决问题的正确方法。

“代码优先”程序员对编程有一个根本的误解。要知道,编程是为用户解决问题,而不是为了编写出漂亮的代码。重要的是代码能够工作,而不是代码的外观。

这是否意味着,我鼓励大家编写糟糕的代码?不在乎使用什么技术或软件?

绝对不是。

我很在乎代码!我只是认为,我们先要保证方向正确,因为我相信,只要保证代码能够解决问题,那么通过更好的产品,最终可以获得更好的代码。反过来就不成立,更好的代码未必会获得更好的产品。

我对代码的评判标准是: 如果产品不好用,代码也不会好。 好的代码只有在它产生了一个行得通的产品时才存在。

From:阮一峰 科技爱好者周刊(第 207 期)代码优先与产品优先