程序开发的墨菲定律

摘要:墨菲定律????????又是一年的初夏时节, 天气变化无常, 时而如爆款特卖急速升温, 时而满30减10, 人的心情也如气温一般起伏不定.????????下意识的打开钉钉工作群看看发生了什么, 此刻的心情总是矛盾的, 看着同事的只言片语试着去了解事情的来龙去脉, 有时偶尔想插上几句话, 又生怕陷入其
墨菲定律

????????又是一年的初夏时节, 天气变化无常, 时而如爆款特卖急速升温, 时而满30减10, 人的心情也如气温一般起伏不定.

????????下意识的打开钉钉工作群看看发生了什么, 此刻的心情总是矛盾的, 看着同事的只言片语试着去了解事情的来龙去脉, 有时偶尔想插上几句话, 又生怕陷入其中脱不开身, 只读不回又让人觉得我对此莫不关心, 全然不顾又让人忐忑不安, 生怕由于我的起因让同事陷入麻烦. 这种心理应该是很普遍的现象吧.

????????流行在程序员间的一个很经典的笑话是这样的, 普通人见面的第一句话是问“你吃了吗”, 程序员见面的第一句话是问“呦, 最近又在写什么bug”. 这是一种自嘲也反应了一个普遍的现象, bug与程序总是形影不离, bug会导致功可以异常, 会影响使用户体验, 会失去用户, 甚至会让人怒砸手机、砸电脑, 造成财产损失.

????????程序员会由于自己开发的功可以而沾沾自喜, 也会由于自己写的bug而垂头丧气, 假如你告诉一个程序员你开发的功可以有bug, 程序员的第一反应是“你的环境是不是有问题, 你傻逼你会使用吗”. 假如你换一个说法, 你实现的功可以跟预期的有点不太一样, 你可以否检查下, 程序员的第一反应就会是“我操, 有bug”. 同一件事, 不同的说法, 得到的答复截然不同. 不论怎样说, 程序员多少是有些不愿面对bug的, 可是又不得不处理, 由于我们都知道, 不处理的后果会很严重.

????????写了两年代码, 发现墨菲定律也适使用于程序开发. 墨菲定律是一种心理学效应, 主要内容是: 1, 任何事都没有表面上看起来那么简单; 2, 所有的事都会比你估计的时间长; 3, 会出错的事总会出错; 4, 假如你担心某种情况发生, 它就更有可可以发生.?

????????先说第一项. 当你接手一个功可以的时候, 产品经理告诉你, 你要做出这个效果, 可以这样那样就行. 你看着原型图和流程图, 对照需求说明, 快速转动着你的大脑, 仿佛一瞬间, 你已经实现了这个功可以, 它已经可以在你的大脑中完美运行了. 你双手枕头, 身体往椅子上一靠, 轻松写意的告诉产品经理“这个简单, 明后天就搞定”.?

????????随后你开始快速着手开发, 在这个过程中, 你忽然发现不妙, 这件事似乎没有表面上看起来的那么简单. 假如这样改, 会不会影响到现有的功可以; 假如这样走, 会不会流程走不通; 假如这样操作, 会不会产生bug. 忽然之间似乎又多了很多功可以要开发, 按照排期预计完不成啊, 可是已经答应了别人了. 此时又陷入烦躁和自责中无法自拔.?

????????再说第二项. 一个大型项目的开发不是一蹴而就的, 需要将大版本划分成小版本, 小版本划分成大功可以, 大功可以划分成小功可以, 小功可以整理成一步一步的业务逻辑, 逐渐实现. 理想的情况下, 项目经理将这些功可以逐一排期, 开发按照这个排期完成开发、测试、发布, 最终完成整个大的项目.?

????????不论做任何事都会遇到困难. 程序开发更是如此, 因为技术水平、开发经验、团队协作等多方面起因, 完成一个功可以的时间总是会超过预期的时间. 为了在规定时间完成任务, 加班加点不可避免, 通宵熬夜家常便饭, 秃头脱发十有八九. 下次排期时多争取点时间, 时间和生命且过且珍惜.

????????聊聊第三项. 人体的组成、社会的运转、世界的构成、宇宙的形成看似无比精妙, 实则处处暗藏bug. 程序代码更是如此, 再优秀的架构, 正当的设计, 精确的编码, 也会产生意想不到的bug.?

????????一个产品的成功不代表没有缺点, 只不过没有被放大而已. 以前我对于bug的心态是害怕, 害怕又要面对突如其来的问题; 现在我对于bug的态度是厌烦, 怎样又有bug, 真是烦不胜烦. 既然会出错的事总会出错, 与其把时间白费在烦躁不安, 自怨自艾上, 不如叹息一声, 静下心来接受bug,?慢慢排查, 找到根本起因, 逐渐处理.

????????最后一项. 每当完成一个功可以的时候, 心中都会充满成就感. 我知道每个程序员都很享受这样的感觉, 由于他们知道他们的成果不仅能换来面包, 更可以改变世界, 实现自我价值. 虽有夸大其词之嫌, 但其实一点都不为过.

????????稍等一下, 似乎少了点什么步骤, 哦, 对了, 还要测试. 没有测试的代码是危险的,没有测试的代码是危险的,没有测试的代码是危险的, 重要的事情说三遍. 其实三遍都算少的了. 完成了一项功可以, 假如没有全面测试各种条件, 当你发现某种条件还没有测试, 你担心会不会出问题, 但是你又觉得应该没有啥问题的时候, 无数次的事实证实, 问题总是会出现在你没有测试的那个条件中. 这似乎很讽刺, 但就是这么残酷, 现实一次次的打脸, 已经让我面红耳赤了. 下次完成功可以的时候, 不要想着自己改变了世界, 先想想自己已红肿不轻的脸吧.

????????写着写着又到了这样的时刻, 夜里12点, 某年某月的某些天的此时, 我还在急忙的赶进度、修bug、思考未来的人生.?

????????程序开发永远不要抱有侥幸心理, 此时未做好的事, 将来会花数倍的时间来修复,??可是将来的时间够使用吗?明日复明日,明日何其多,我生待明日,万事成磋砣.

  • 全部评论(0)
最新发布的资讯信息
【系统环境|】Hadoop环境中管理大数据存储八大技巧(2019-06-15 11:01)
【系统环境|服务器应用】现在国内IT行业是不是程序员过多了?(2019-06-11 06:34)
【系统环境|服务器应用】新贵 Flutter(2) 自己设置 Widget(2019-06-11 06:34)
【系统环境|服务器应用】Android完整知识体系路线(菜鸟-资深-大牛必进之路)(2019-06-11 06:34)
【系统环境|服务器应用】Java程序员小伙经历三个月备战,终获阿里offer(2019-06-11 06:34)
【系统环境|服务器应用】每日一问:谈谈对 MeasureSpec 的了解(2019-06-11 06:34)
【系统环境|服务器应用】【科普】晶体管-1(2019-06-11 06:34)
【系统环境|服务器应用】一个很多人都会答错的java基础题(2019-06-11 06:33)
【系统环境|服务器应用】深入了解枚举类型(2019-06-11 06:33)
【系统环境|服务器应用】JavaScript编译原理与内存管理(2019-06-11 06:33)
手机二维码手机访问领取大礼包
返回顶部