导航:首页 > 程序命令 > 程序员代码出bug趣图

程序员代码出bug趣图

发布时间:2023-01-21 20:27:01

‘壹’ 作为一个程序员,我发现同事写的代码有Bug,怎么办

作为一个程序员,你发现同事写的代码有Bug,你会告诉他吗?讲真的,这个事情对我来讲,很难,因为我在这个事情上吃过苦头!

看待这个问题首先得看对方脾气咋样,如果对方脾气不好,或者很难搞,还是想想其他办法。直接跟他讲可能会遭到对方的白眼!

别看我们程序员一个个傻傻呆呆的,其实自尊心特别强!除非你是他的领导,否则即使你发现了他代码里的Bug,他也不会服你!虽然还是会改,但内心一定在想:“就你能?自己管好你自己就成,看我代码干啥?”

其实我也是这样的心理,好像程序员除非自己愿意,否则都不怎么喜欢别人去研究自己的代码,好像对方故意找自己茬的意思。

但是不管咋样,不管是有意无意,我们既然发现了同事写的代码有问题,就不能坐视不管!

我最近在调一个小伙伴的接口时,因为涉及到数据回滚,所以就想知道他的代码有没有做回滚操作。如果没有,可能我这边数据已经回滚了,他那边没回滚就会导致数据前后不一致。所以我也不是有意要审查他的代码。

然后我就发现他不光没有做回滚操作,也没有做批处理。几个涉及到修改数据的代码就这样一行一行走下来,看着直让人挠后脑勺。

于是我就把这个事情告诉了他,让他要么做事物(如果操作有问题,可以自动回滚),要么做主动回滚。否则我在调他接口时,如果我这边撤销了数据修改,他那边却提交了修改,就会导致数据丢失或前后不一致。

当我告诉他这个情况和解决方案以后,我能很明显地感受到他有点不愉快。但事实摆在眼前,也只能修改。可修改归修改,他还是有点脾气的。于是他写了一个事物,将大部分涉及到增删改的语句全部包在了里面,唯一把一个删日志的语句留在了外面。

我看到这个情况,就委婉地跟他说:“”好像这个删日志的语句也要包在事物里面哦!”

但是他却说,这个无关紧要,他特意放在外面的。

我跟他说,既然这里有数据存在,就不是无关紧要的。不管咋样,也不能无缘无故就把数据给删了。但是他很倔强,执意不改,还说如果我觉得这个数据有用,那就让我自己“顺手”把这里的代码改一下。

此时我能明显地感受到他已经有点烦我了!无奈之下,我把这段代码给移动到了事物里面。

而我为什么说我因为发现同事代码有Bug告诉同事而吃过亏呢?

原因在于我之前待过的一家公司,有一个工作了几年的程序员同事,而我当时是个萌新。因为我专门培训过,所以代码能力还行。可这个同事虽然工作了几年,但写出来的程序代码却Bug一堆,常规测试手段还测不出来。

我是在偶然之间发现他写的一个程序是有Bug,但是又不确定,所以就想看看他代码是咋写的。不看不知道,一看吓一跳,他写的好大一部分代码都有问题!

我当时初生牛犊不怕虎,发现一个跟他说一个,结果最后把他给惹毛了,当场就要跟我动手,说我专门针对他。我哪有针对他的心呀!我当时想的是把这些Bug找出来,让他改掉,否则对公司也不好。

但是他想的估计是被我这个萌新发现了一堆Bug很丢人。我总是针对他的代码找Bug,他就是脾气再好也绷不住啊!

后来我们的部门经理为了不让他难堪,也为了给他个台阶下,找了我写的程序里的一个缺点,猛批了下,然后跟大家说:“我刚才看了看,大家写的代码有好多问题。这样,大家都各自检查一下自己的代码,看看有没有问题,有问题尽快改过来,然后我们统一测试!”

直到现在,我也没学会当发现同事代码有Bug以后,在不让同事产生不愉快的心理的情况下,委婉地告诉同事他代码写的有问题的方法。

‘贰’ 历史上有哪些因为程序员写出的bug而造成的事故

1. 火箭爆炸,原因:类型强转(64b浮点->16b整数)导致异常
2. 火箭爆炸,原因:Fortran代码笔误(少一个减号)
3. 火星车故障,原因:vxWorks优先级逆转 -
4. 火星探测器坠毁,原因:用错计量单位(磅与牛)
程序员导致的事故挺多,这些是严重点的。还有游戏更新把用户电脑上文件删光的...

‘叁’ 游戏界有哪些BUG被官方当成梗流传下来了呢

看到这个问题,大名鼎鼎的吃鸡神器就闪耀在我的脑海啦!
它就是赫赫有名的 绝地求生平底锅!

肯定有很多人不知道,平底锅挡子弹,一开始其实是一个bug。
在早先的绝地求生版本中,平底锅只是一个近战武器,并不存在四级甲等等美称。不过,总有那么一部分人,在 游戏 里找bug并乐此不疲,所以, 平底锅bug 就这么成功被他们卡出来了!

当时的bug是这样, 拿放 多次平底锅 锅,然后拿放枪械多 次,来回拿放直到成功出现一个神奇的东西,把锅和枪同时拿在手上,角度刚好把头挡住,正面刚枪别人是打不到头的。

可以说,这个bug刚卡出来的时候真的是无敌了。 不过后来是被修复了的。

然而,标题上线!
平底锅挡子弹的功效被保留了 !不论是玩家还是官方都非常喜欢平底锅的这个bug,正式保留挡子弹bug的平底锅成了绝地求生的一大神器,护菊锅,四级甲,近战大杀器,只有想不到,没有做不到( ‾ ‾ )

游戏 界有很多盛极一时的bug,很多人不喜欢bug,觉得那和作弊没区别,可是 能被官方认可并且默认保留的bug,必然是受到广大玩家认可和喜爱的。

当然除了绝地求生的平底锅还有很多 游戏 里也有声名远扬的bug, 有时候bug也能拯救 游戏 世界哦

回头抱住我的平底锅走上吃鸡大道(⁎⁍ ᴗ⁍ ⁎)

***

这里是爱好 游戏 的小念真,希望走过路过的小哥哥小姐姐顺手给个赞。

路过的大神轻喷,帮忙补充一下吧

o( v )o

王者荣耀里最出名的莫过于韩信和鲲的故事,至于庄周?整天睡觉,被韩信把鲲给偷走了都不知道,活该被偷。

当时王者荣耀的bug是这样的,当韩信对庄周放攻击的时候,因为韩信可以挑飞对手,于是庄周就被挑了起来鲲还在地上,正巧旁边一个达摩过来,给了庄周一个大招,庄周就这么被踢走了。可是鲲还留在原地。而这一切,刚好被网友截图,所以这个梗就出来了。

还有别的梗,比如说宫本武藏,这个被削弱了六七十次的男人,还有当初的曹老板,一个打五个,还是抗塔打,拿完五杀之后顺便把塔拆了(那时候不像现在,没有兵线就拆不动),而且曹操大招的时候打防御塔都回血。

还有刘备,当时的bug是伤害没有削减,也是可以一打五的存在。

作为 游戏 玩家,我们都讨厌BUG。但不是所有的BUG,有些被开发者无意留下的特性让我们感觉超越了 游戏 世界的规则,反而很受欢迎,最终被官方保留下来成了 游戏 特色。
关卡加速(太空侵略者)
这个 游戏 想必很多老玩家都有印象,越到后期外星人的移动速度就越快,挑战性也越高。但这其实是一个BUG造成的。

在制作人西角有宏的原版设定中,外星人会一直保持匀速移动。但是由于当时(1978年)硬件的机能不足,开场时满屏的外星人会造成掉帧。越往后,屏幕上的像素点越少。于是,速度就快了起来。

当然我们最终玩到的版本应该并不是完全掉帧的版本,而是重新设计过的。

这种越往后速度越快的玩法后来被大量 游戏 借鉴,已经成为了一种经典设定。
苦力怕(我的世界)

游戏 中的“吉祥物”苦力怕最初其实是想被设计成可爱的猪猪。但是开发者Markus Persson当时没有建模软件,只能直接用代码修改模型。因为输错了数据,模型的身体直立了起来。Markus把它调成了绿色,就变成了现在的苦力怕。
连续技(街头霸王2)
可能有点难以置信,在最初的格斗 游戏 中,玩家们只是互相狂按攻击键,一拳一拳的把对方怼死,超级傻,完全没有连续技的概念。

连招的发明源自街霸2的一个BUG。制作人员发现出招击中对方以后,立刻按下其它攻击键可以取消之前的攻击动作,于是形成了连续打击。它们觉得这个BUG很有意思就保留了下来。

如今,重拳、轻拳、再接个必杀技这样的连招已经成了格斗 游戏 里最核心的玩法。
火箭跳(雷神之锤)
在初代雷神之锤里面有一个高手必备的神操作:玩家跳起悬空的过程中,对准地面来一发火箭炮,就会被爆炸的冲击力推动跃向更高更远的地方。以此你可以完成很多不可能的操作。因为大受欢迎,系列一直保留着这种玩法。

此外,如军团要塞、守望先锋这些 游戏 都借鉴了火箭跳的设定。

火箭跳起源于毁灭战士初代,当时只能横向移动。据说是一个BUG造成的,被制作人John Romero保留下来做成了彩蛋。
花屏(公理边缘)
这是一个向银河战士致敬的独立 游戏 。 游戏 中有一把武器可以把乱码的图像恢复原状,这实际上是一个梗。

乱码花屏对于玩过早年街机和FC卡带机的玩家肯定不陌生,当 游戏 卡屏的时候就会出现。现在,童年噩梦变成了有趣的关卡设计。

多硬币方块(超级马里奥兄弟)

马里奥 游戏 里有的方块可以顶出超多的金币,让玩家可以轻松加分、加命,非常有意思。它最初也是一个BUG,而且被删除了。但开发者又觉得因此少了很多乐趣,于是又改了回去,保留至今。

Bug对于程序员来说是噩梦,bug对于 游戏 开发公司来说也是如此,一个备受诟病的严重bug对于一款 游戏 来说是致命的。除非在少数情况下,因为一个bug成就了一个 游戏 ,成为了一个非常棒的设定,这个可能令开发者本身都始料未及。下面我们一起来看看有哪些bug被 游戏 开发商改成了 游戏 中独特的设定,让玩家一直津津乐道的吧。
上上下下左右左右BA

呃,一个 游戏 玩家不知道这个bug,就不算是一个合格的 游戏 玩家。如果不知道这个梗,甚至连许多 搞笑 电影都看不懂。“上上下下左右左右BABA”,它其实最早源自科乐美的另一款 游戏 ——1985年发售的《宇宙巡航机》。(两年后,影响一代人的《魂斗罗》才横空出世)这两款 游戏 首发都是街机平台,之后才移植到红白机平台上(简称FC,山寨到国内就是广为人熟知的小霸王)。桥本和久(Kazuhisa Hashimoto)负责该移植项目,但是在移植过程中,他发现这款 游戏 已经难到就连他也根本无法用3条命通关的地步,为了顺利完成移植工作,他便私自在《宇宙巡航机》中加入了一段调试程序来帮助通关,开启密码就是——上上下下左右左右BABA。

《魂斗罗》在沿用了此设定并大火之后,科乐美几乎在其制作的所有 游戏 中都植入了这个作弊码。而正是在一代又一代的科乐美 游戏 中反复出现,只要你知道了这个作弊码,就可以在之后的 游戏 中不断使用,因此它比那些昙花一现的作弊码更加广为人知,甚至已经突破作弊码本身的含义,演变成了一种 游戏 文化。
绝地求生 平底锅

平底锅能挡子弹,堪比防弹衣。这个梗只怕是绝地求生独有的。其实,这个能挡子弹的平底锅刚开始也是个bug,后来被玩家发现后上报给蓝洞。蓝洞觉得这个bug还蛮有意思,就沿用了下来。结果就是全世界都知道了绝地求生中平底锅比防弹衣有用,也形成了绝地求生的一大特点。
超级马里奥 踢墙跳Bug
《超级马里奥兄弟》是最为经典的标志性横版过关动作 游戏 。由于任天堂和FC的存在,这款 游戏 也是很多玩家早期的入门 游戏 之一,由于其用户基础庞大,其乐趣性和bug也逐渐成为了Bug 探索 爱好者们的最爱素材。

这个 游戏 最着名的一个Bug就是那个能让你跳的更高的踢墙跳。这个Bug的原理是在恰当的时间按下跳跃之后,可以让你跳的更高。bug最早出现在FC和SFC版的马里奥 游戏 中,然而到了NGC的《超级马里奥64》中,这个踢墙跳从Bug正式转变为了一种 游戏 技能的存在,而且在 游戏 中这还成为了一个玩家必须要掌握的技巧,不然很多位置你都过不去,这就使得这个bug成为了经典。后面,无数的 游戏 借鉴这个bug的创意,让踢墙跳成为了动作 游戏 主角的必备技能,甚至延伸出了进化技能二段跳和浮空,这也是没谁了。

恶魔城月下夜想曲 出城BUG

出城BUG,所谓的出城是指利用BUG手段达到主角普通方式去不到的地方,以达到增加地图完成度刷装备和魂,快速速通关等目的。尤其是对加快流程起到了很大作用。恶魔城月下的出城方式非常多,500心、卡电梯、狼形态撞楼梯、卡门等,于是,玩家在最终BOSS之前,大都进入了寻找出城BUG的节奏。恶魔城 月下夜想曲的出城BUG,也是 游戏 史上最让玩家乐此不疲的BUG,同时也因为这些极具研究价值和乐趣的BUG。恶魔城 月下夜想曲不仅没有被玩家所诟病,反而还成为了最受玩家欢迎的一代恶魔城作品。PS版本最高的地图完成率是200.6%,但是囧王者始终只能达到199%左右,估计是漏了哪些细节空间吧。有空再去刷一次。
魔兽世界,堕落之血事件

你以为我会说魔兽世界中盗贼(潜行者的bug?)呵呵,too young too simple。但是这个堕落之血事件,确确实实是暴雪从来没有想到过的bug。我们来回溯一下整个事件:人类 历史 公元2005年,在艾泽拉斯大路上,古拉巴士巨魔的血神---夺魂者哈卡将瘟疫散布在了艾泽拉斯。在和哈卡战斗的过程中,它会随机在 游戏 者的角色上施加一个名为堕落之血的DEBUFF,这个法术会不断抽取玩家的生命,同时还具有非常强的传染性,因此玩家必须分散站位以避免传染。但是就像是生化危机病毒从实验室泄露到浣熊市一样,当受到感染的玩家传送回到人口密集的城市后,由于其高传染性,这种debuff就迅速传染开来。玻璃渣曾几次试图修复这一问题,包括在一些地区实施隔离,但根本无法阻止这场灾难,玩家的角色近乎灭绝,幸存下来的人们开始远离人群,东躲西藏,估计那是最早的绝地求生了吧,如同末世中的人类。并且,美国疾病控制与预防中心(就是CDC啦,玩 游戏 或者看末世电影的都知道这个名词)向玻璃渣申请得到这次瘟疫暴发的数据,以研究应对现实世界中的疫情,这个屌。后来,这种爆发式的瘟疫传染模式,再结合生化危机中的病毒传染模式,影响了后面出的所有的末世和病毒相关的 游戏 ,其爆发机制和传播途径基本就和魔兽中的这次事件一致。
GTA 狂暴警察,如果当年没有这个BUG,GTA可能就不存在了
R公司是做赛车 游戏 的,他们做了一款叫RACE AND CHASE 的赛车 游戏 , 游戏 理念是“有趣,上瘾,多人飚车,冲撞”,虽然这听起来像马里奥赛车,但实际画面是这样的:简单,粗暴,毫无可玩性。

当初研发团队过于注重开车的细节而导致操作并不顺手,程序也总是不稳定,高层一度考虑取消这个项目,结果某一天测试人员发现原本设定的警察先生突然变成了狂暴的角色,想要碾死偷车玩家。这个bug毫无疑问被上报,却被创意总监及时抓到卖点,于是这款 游戏 变成了开放模式,受到了广大玩家的喜爱。我觉得这个确实是一个转变思想的大胆手笔。

BUG是玩家在玩 游戏 的时候深恶痛绝的,但凡事也有例外,居然也有少数bug在巧合情况下让玩家体验到了不一样的 游戏 乐趣,收到市场这种正反馈以后,官方于是索性当成梗流传下来~

《街头霸王》

ACT 游戏 里,追求的就是炫酷的动作效果,一连串令人窒息的操作下来,能够让对手不是半死就是直接KO,这种满足感会非常高。但是很多人不知道,连击最早的灵感来源于一个bug。最开始 游戏 设计师认为连击这个操作需要玩家具备一系列高超的操作技巧,很难触发出这种“连击”操作,但是偶尔有玩家在触发了这个技能以后,很快掌握了这个技巧,而且传播速度非常快,最后让开发者们也开始重视“连击”这种操作。

后来运用连击的 游戏 越来越多,甚至成为了类型 游戏 的一个特色。研究如何变化连招也成了玩家特别喜欢 探索 的一部分。

《魔兽世界》

大家经常吐槽暴雪最喜欢玩梗。而《魔兽世界》被留下来的bug有:

想要获得逐风者之剑,步骤需要的不少,其中公认最难的一个环节就是击败加尔和加盾男爵。但是还不一定百分之百能够获得左脸和右脸。只有都拿到以后再完成一些任务才行。然而玩家发现如果你有一个脸可以通过bug获得下一个脸。

需要利用这个bug的情况很复杂,需要满足的条件也有很多。感兴趣的小伙伴可以自行去搜一下~

《暗黑2》

有人认为暗黑2其中有不少bug是被故意沿用下来的,大家发现首杀boss能够获得的装备很多,所以研究如何能尽量多地刷首杀得装备的情况很多。

而且还总结出来了不少途径:新人可能都会发现的,第一关首杀了boss不退出,以后就永远是首杀。第二关、第三关都有首杀的规律。这个bug还算是对于玩家来说比较有利的,官方也没有将这个bug给去处掉。

所以从某一方面来说BUG也不尽然全都是坏的情况啦~还有啥经典bug欢迎大家讨论啊~

作者:张二狗

格斗 游戏 的赖皮连续技
早期格斗有很多无限连的连续技 (指某些格斗 游戏 中,用某一招可以一直无限卡,很赖皮,比如流星蝴蝶剑匕首的后打,后打可以无限赖死一个满血),

当时看一个 游戏 策划讲其实是非常不公平的,于是现在都有了保护机制
文明系列的印度领袖甘地
甘地是一位爱好和平的领袖。

结果在文明2里面出了这么一个BUG,甘地的好战指数是全文明最低的1,而文明还规定,国家发展到现代 社会 时,好战指数-2

而且刚好,那个时候差不多可以造核弹了,这个特性在文明5当中重现,不过这次是官方故意的。

他的造核弹与使用核弹的倾向最大,这也是玩家宁愿付高额代价也不能让他造出核弹的原因……于是这就是所谓“甘核平”这个梗的来由
吃鸡平底锅挡子弹
平底锅最早是作为一款近战武器的存在

有些热衷于找BUG的玩家发现平底锅有一个BUG,在反复掏出放下掏出放下后,把锅和枪同时拿在手上,角度刚好把头挡住,正面刚枪别人是打不到头的

最终官方修复了这个BUG,但是强力的“四级甲”已经作为一个梗流传下来了

我所知道的只有 绝地求生大逃杀 和 王者荣耀 里面有。

绝地求生里面的就不用说了,就是平底锅嘛。

但王者荣耀里面的就没那么多人知道,在以前的老版本里面,貂蝉的二技能无敌其实是个bug,但是鉴于以前的貂蝉没那么强,所以这个bug又被当做一个梗流传至今,官方也懒得管他了。

你好,我是赛罗,很高兴回答您的问题。

上上下下左右左右BABA这个《魂斗罗》30条命的大招其实就是内测是程序员为了检测 游戏 是否正常而设计,因为只有3条命,基本上除了顶尖玩家没有几个人可以,而后来却忘删了

我的世界

说到bug 手机的手游可以在电脑中玩 游戏 ,电脑 游戏 手机里玩 游戏 ,电脑上可以开手游代练,手机上的电脑 游戏 同样一样,这个秘密就是模拟器跟云电脑

‘肆’ 软件存在bug是程序员把代码打错了造成的吗

从你的描述来看,软件存在bug,不是程序员把代码打错了,而是代码设置不合理,比如需求不合理,软件的操作上,设计上原本就存在逻辑漏洞,多个单体能够正常工作的模块结合到一起产生问题,异常场景没有考虑到等等,很多原因都可能产生bug。

‘伍’ 为什么有的程序员的代码结构混乱

程序员都有一颗工程师的心,所以当他们到一片新的场地想做的第一件事就是,将旧的一切推倒重来。是的,他们决不会满足于简单的增量劳动。

或许这种微妙的心理定位可以解释:为什么程序员进入新项目组后宁愿丢掉旧代码重新写,也不愿意修修补补。他们认为旧代码简直一团糟。

但是,事实上真是这样吗?你之所以认为旧代码一团糟,其实是由编程的一个基本定律决定的,那就是:写代码容易,读代码难。

为什么你觉得旧代码异常混乱?因为读代码更难。

这大概就是代码Reuse难以实现的原因。 这就是你组里的每个人都喜欢用不同的功能将分割的字符串转换成一个数组。比起猜测旧的功能是怎样实现的,重新写一个自己的功能要简单和有趣多了。

作为这个公理的推论,你可以问问身边的程序员他们正在奋战的代码怎么样?“简直是一塌糊涂!”他们肯定会这样说。“我简直想推倒重来!”

为什么认为代码这么糟糕呢?“额,看看这个功能,竟然有两页长!完全不知道这些东西为什么在这里!完全不知道这些API是干什么的。”他们会这样回答你。

漫画:读别人代码是一种怎样的体验?

曾经,Borland的创始人 Philippe Kahn当初就是向记者们吹嘘:Quattro Pro会比Microsoft Excel要好用得多,因为它是从头开始编写的,全部都是新的源代码!

但是,认为新代码比旧代码好简直就是荒谬。旧代码是已经运行过的,测试过的。无数的bug在被发现前都上线运行过,发现之后程序员们可能在花了好些日子才修复了这些bug。这种修复可能是一行代码,也可能是几个字符,无数的时间和精力都花在了这些bug修复上。

当你决定抛弃这些旧代码从零开始的时候,你也丢掉全部前任努力的结果。

新代码一定比旧代买好?NO,重写可能会带来更大的风险。

对技术领导者来说,重写项目的代码也是一个异常艰难的决定。因为从公司层面说,重现代码甚至会威胁产品的市场竞争力。一旦决定重写代码,那么与竞品相比,你可能落后了2~3年——在软件行业,这时间可够长的。

你理想中的新代码会带来产品功能的提升▼

但事实上,即便重写的新代码可以实现旧代码的所有功能和需求,但是为产品带来的市场竞争力只有边际提升。因为重写用的新技术、新语言、新框架并没有给产品带来质的飞跃。

更不用说在重写的漫长过程中可能会遇到一些意外情况,比如:

1、缺钱:资金链的断裂▼

2、缺人:核心程序员离职

最终导致效果不佳:达不到原产品应有的所有功能和需求,白白浪费了时间和金钱,也丢掉了市场竞争力。▼

所以重写代码意味着,你在把自己置身于非常危险的境地,可能几年后你也写不出比以前更好的代码。你只是花了一大笔钱把已经存在的代码又写了一遍。

当你觉得眼前的旧代码很烂时,该怎么办?

你觉得旧代码写的很烂,那又怎样呢?它们已经上线,已经在实际运行中经受住了考验。所以当你发现前任留下的代码乱七八糟的时候,不妨冷静下来,从以下三个方面入手理解代码、改善代码:

1、代码的结构有问题

如果一段网络代码突然弹出了自己的对话框,应该是UI代码需要被处理。这些问题可以被解决掉,你要一次次小心地移动代码,重构,改变接口。还需要一位细心的工程师立马仔细地检查这些改变是否有问题,从而不打扰到其他人。事实上,甚至比较大的结构变化也可以不扔掉代码来完成。

大牛程序员Joel Spolsky回忆说,曾经在某个项目中,他和他的团队花了好几个月重新架构在一点上:把代码动来动去、清理、创建有意义的基类,并创建了模块之间的完美接口。但是他们始终非常小心翼翼,并没有产生新的bug、也没有丢掉任何旧代码。

2、代码的效率不高

曾经,Netscape的渲染代码被传非常缓慢。但事实上,这只会影响该项目的一小部分,这部分是你可以优化甚至重写的。你完全不必重写全部代码。优化速度的1%工作量,会让你获得99%的爆炸性提高。

3、代码写得很丑

有些代码真的写的很丑,比如Joel曾参与一个项目,开始用下划线做开始的成员变量约定,但后来改用更标准的“M_”。所以一半的功能用“_”开始,一半用“M”开始,这看起来真的很丑陋。但这个问题5分钟就能解决,而不用从头开始写全部的代码。

最后,你要记住,从头开始再写一遍并不意味着你会写出比以前更好的代码。因为你没有参与到上一个版本的创建,所以你其实根本就不算有经验。一旦你准备推倒重写,你可能会再犯一遍版本一犯过的错,甚至会产生更多的新问题。

一个总结:

面对糟糕的旧代码,Keep Calm & Carry On !

在大型商业项目中,推倒重来是非常危险的行为。当然,如果你是在做实验,想到新算法可以随时重写。

‘陆’ 程序员为什么要一直改bug不能一次性写好吗

作为一名程序员,我也总是在调试,Bug总是防不甚防的出现,这个过程真是有趣又痛苦,最后我觉得习惯就好,一次性写出完美代码是每个程序员不可实现的梦想。

  • 程序员作为一项工作,是有任务有指标的,比起慢慢写出完美程序解决所有问题,大家更喜欢快速看到一个可以执行解决部分问题的程序,此时完成比完美更重要。

  • 没有哪个程序员可以写出完美的代码,即使高能又伟大的公司也做不到这一点,想想看你的手机软件是不是经常提醒你该更新了,连微软都在三天两头的让你打补丁,不是吗?

    ‘柒’ 如何向 程序员 描述 bug 笑话

    1.程序员写出自认为没有Bug的代码。

    2.软件测试,发现了20个Bug。

    3.程序员修改了10个Bug,并告诉测试组另外10个不是Bug。

    4.测试组发现其中5个改动根本无法工作,同时又发现了15个新Bug。

    5.重复3次步骤3和步骤4。

    6.鉴于市场方面的压力,为了配合当初制定的过分乐观的发布时间表,产品终于上市了。

    7.用户发现了137个新Bug。

    8.已经领了项目奖金的程序员不知跑到哪里去了。

    9.新组建的项目组修正了差不多全部137个Bug,但又发现了456个新Bug。

    10.最初那个程序员从斐济给饱受拖欠工资之苦的测试组寄来了一张明信片。整个测试组集体辞职。

    11.公司被竞争对手恶意收购。收购时,软件的最终版本包含783个Bug。

    12.新CEO走马上任。公司雇了一名新程序员重写该软件。

    13.程序员写出自认为没有Bug的代码。

    ‘捌’ 你的代码出bug了,程序员听到这个时的表现太真实了

    这个大撒比写出这么个烂代码,幸亏有哥这样神一样的存在才发现,哥真是救世主。

    这个程序运行很久了是不是真有bug啊,是不是你弄错了啊,可以重现么,什么?可以重现,有尼玛问题也不大,要不用户早投诉了,瞧你那惊慌失措的样子,真想吐你一脸狗屎。

    这个bug隐藏的很深啊,还好哥犀利犀利,没有被领导发现,今晚加个菜。

    这个程序刚上线还处于调试阶段,有bug很正常,谁的程序没bug,连操作系统都有bug。

    哥就是犀利,自己开发自己测试,看测试那帮撒比什么也不会干,这么明显的bug都测不出来,真是一群废物。

    1、“是删除它还是修改它呢?好纠结 !”

    2、网上一定有解决办法。

    3、是谁动了我的代码?

    4、完全不知道这些代码是神马东东。

    5、哦,为什么我都没写注释呢?

    6、算了,废了他,我还是从头开始吧!

    程序员自身可以在程序生成的每个阶段做这些工作: 仔细的设计、编写代码时、单元测试(重要)、功能测试。

    ‘玖’ 寻找一张关于程序员敲代码的动态图片

    平均天100行有效代码我觉得对得起自己了纯手工写C++

    前做web报表系统人家写好了张报表我拿来照着套生产其报表连html估计天能干上万行几十张报表干……

    关键花思考和查资料上时间比敲代码多得多
    sdmjxsfcry参考哈·····

    阅读全文

    与程序员代码出bug趣图相关的资料

    热点内容
    51单片机程序单步视频 浏览:239
    家庭宽带如何连接服务器 浏览:117
    汽车高压泵解压 浏览:770
    上门正骨用什么app 浏览:758
    安卓为什么免费使用 浏览:397
    加密货币都有哪些平台 浏览:625
    python和matlab难度 浏览:388
    python爬虫很难学么 浏览:572
    小米解压积木可以组成什么呢 浏览:816
    为什么滴滴出行app还能用 浏览:564
    怎么升级手机android 浏览:923
    php权威编程pdf 浏览:994
    扣扣加密技巧 浏览:720
    苹果如何创建服务器错误 浏览:497
    软考初级程序员大题分值 浏览:475
    js压缩视频文件 浏览:580
    linux如何通过命令创建文件 浏览:991
    应用加密app还能访问应用嘛 浏览:435
    安卓怎么用支付宝交违章罚款 浏览:667
    php面向对象的程序设计 浏览:506