你是不是也有这样的问题?

????速戳看视频????

 黑马视频号 

你玩过“侠盗猎车手5”(简称GTA 5)这个游戏吗?这个游戏是由Rockstar Games游戏公司(被玩家称作R星)出版发行的一款围绕犯罪为主题的开放式动作冒险游戏。

图:来源网络,侵删

从2013年诞生至今,虽然是一个收费游戏,但是一直都被玩家认为是物超所值的,据说这款游戏仅2020年就卖了2000万份,累计销量更是达到1.4亿份,从销售量上就可以看出这个游戏有多让人上头!

图:来源网络,侵删

但这样一个让人上头的游戏,在其程序中却暗藏一个「屎山」代码,并且7年间没人敢动!

所谓「屎山」,是程序员间流传的一个梗,指陈年累月且复杂低效的代码,因为改动成本巨大,所有人避之不及。

在2020年,无数玩家在网络上吐槽抱怨:进入GTA 5花费的时间太长了,少则5、6分钟,多则20分钟,对于急切想开始游戏的玩家来说,这么长的等待时间实在是太长了。

其中有一个玩家,实在不愿意等待这么长时间,于是用逆编程器查看了这个游戏的运行情况,终于找到了原因,原来R星写的代码太低效,加载时一个if竟然要循环19.8亿次。

发现这个游戏漏洞的玩家是一名不愿意透露姓名的黑客大哥,他将这一发现整理成帖子,火遍网络。

帖子的大火,让R星不得不面对这一问题,在和黑客大哥联系后,R星认可了他的改进方法,宣布在后续更新中修复相关问题,并且还慷慨的给他付了一笔1万美元的奖金。

这一事件也引来不少网友的吐槽,很多人说R星每年都能从这个项目上赚数亿美元,但是却不肯花几分钟去解决这么一个低级错误,实在可耻。

如果平均给每个玩家节省10秒,全球500万玩家一天就能节约5000万秒,一年中,节约的总时间大概能有数十年,相当于挽救了十多个人的生命!

据悉,R星到现在只是官宣会修复这一代码,但还没有实际修改这一代码,至今这个代码还在各个玩家的CPU上运行!

播妞猜测R星不是不愿意去修改这一代码,而是因为修改的成本实在是太大,就像网友说的:只要游戏不崩,就不会改动任何一行代码

关于「屎山」代码,可以说是在程序员的职业生涯中不可避免的事情,因为即使你写出非常完美的代码,等几个月或者几年再回头看时,也可能觉得是不够完美的。

虽然不可避免,但是在重要项目的代码上,作为程序员,还是要尽量少出或者不出bug,播妞希望大家的代码中「屎山」代码少之又少!

对此你有什么看法

欢迎大家留言讨论

· 推荐阅读 ·

有哪些话一听,就知道你是个水货程序员?

2021-05-11

全国程序员5月平均工资出炉!没想到这个岗位薪资暴跌 ....

2021-05-10

TIOBE 5月榜单出炉,Python第二,谁是榜首?

2021-05-06

点个在看,播妞爱你们呦

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐