当前位置:主页 > 网站空间 > 正文

金山云_斗破苍穹小说全集百度云_新注册优惠

时间:2021-07-23 04:39 来源:埃里克云 编辑:埃里克云

核心提示

阿米蒂维尔编程恐怖 一个老程序会如此可怕和可怕,你害怕改变它吗? 在这个晴朗的日子里,我被要求为我在2000年写的一个程序添加一些新的功能。 我立刻开始尖叫,威胁要把自己...

阿米蒂维尔编程恐怖

一个老程序会如此可怕和可怕,你害怕改变它吗?

在这个晴朗的日子里,我被要求为我在2000年写的一个程序添加一些新的功能。

我立刻开始尖叫,威胁要把自己从桥上扔下来,并乞求"上帝,不是我,为什么是我"。我收集了所有我能找到的理由,为什么这个程序不应该添加额外的功能,包括"它已经受够了",并建议创建一个新的程序来具体解决新的业务问题。

都没有用。

一个新的业务问题必须得到解决,目前的程序做了大部分,只是需要在程序的"杂酚油先生"中添加"一个薄晶片薄荷"的功能,我是幸运的程序员,因为我首先写了这个东西。

任何看过Monty Pythons"生命的意义"的人都会知道为什么我不想在程序中添加薄晶片薄荷。问题是——我为什么这么不安?换节目是我的工作,不是吗?我每天都换别的节目,为什么我对这个节目如此恐惧以至于我宁愿躲在床下也不愿靠近它?

而且这不是一个一次更新几十张表的交互式程序。这是一份只读的ALV报告。这有什么可怕的?

就像最初的"木偶电影"有一句口号"你会相信青蛙会骑自行车"一样,我会说"你会相信一个简单的报告可以从地狱变成恶魔"。

当然我会假装我在为弗兰肯斯坦男爵做怪物相关的程序,以此来掩饰我的日常工作,但尽管如此,这是现实生活中发生在我身上的事情。

2000年,在SAP项目开始时,我意识到没有标准的SAP报表可以显示VFKP表中的装运成本(用于运输怪物),这种方式对人类来说毫无意义。

所以我写了一个非常简单的ALV报表,在表上进行连接LIKP/LIPS/VTTK/VFKP,它非常简单,运行起来就像闪电,所有有用的信息都在那里。其中一个邪恶的科学家看了一眼报告,说"你可以用这个来经营你的生意"。我很高兴,很自豪,一切都很简单。

然后所谓的"维纳斯德米洛"问题开始了(警告-链接包含一个粗鲁的词)。

大约每半年创建一次报告后,平均会在数据检索中再添加一两个表,直到生成报告为止逐渐成为所有人的一切。当然,每增加一项,它的速度都会变慢。

大约在2001年,一位资深的疯狂科学家抱怨说,这份报告被一大堆奇怪的请求弄得臃肿不堪,他要求所有这些请求都必须先通过他审批。这并没有像他所希望的那样有多大的不同,因为所有所谓的怪人请求实际上都是他一开始就提出的,他已经忘记了他已经提出了这些请求。

不管怎样,他继续前进,但随着岁月的流逝,怪人的请求从未停止过。每次更改都是由不同的程序员进行的,每次他们添加新的功能时,似乎是一个很好的地方,通常是在一个以前做完全不相关的事情的例程中。

最近有一个想法,添加了很多额外的-让我们称之为驼背-信息,而这些(驼背信息)现在占了33%的处理时间,人们在看到结果之前就开始抱怨运行时的巨大扩展。

随着时间的推移,程序逐渐失去了所有的结构——无论是在内部,还是在商业意义上,无论是在用户感知到它的用途方面——也就是说编程大师罗伯特C.马丁(Robert C.Martin)说,它已经"像一块肉一样腐烂了"。

因此,在我深入研究这个怪物以进行新的更改之前,为了在进行这些更改之前获得一个基线,我投入生产,运行报告并使用ST05进行SQL跟踪。

在惊恐地盯着结果之后,我为自己的杰作变成了一个可怕的"东西"而痛哭流涕,我总结说,无论如何我都要改变它,我有一种强烈的愿望,想要清除一些正在渗出编程脓液的开放性溃疡,以抵消我正在通过增加更多功能来增加问题的事实我将能够遵循罗伯特马丁斯的另一个规则,即"童子军规则",即你离开营地时比你发现的更干净。

在随后的博客中,我将详细介绍如何一步一步地清理这个怪物。

所以请保持联系….

  • 企业网站_分布式数据库的特点_免费 企业网站_分布式数据库的特点_免费

    在上传.csv文件时,了解需要填写哪些信息是很重要的。综上所述,上传需要ID ORIGIN和ID。原因是ID ORIGIN说明信息来自哪个来源,ID给每个与品牌/公司有过接触的人一个唯一的号码。 例...

  • <strong>网站服务器_邮箱发件服务器_试用</strong> 网站服务器_邮箱发件服务器_试用

    就在最近,我遇到了一个我以前从未见过的问题,那就是在准备一个高效的sapsolutionmanager7.2系统之后。我决定分享我解决这个问题的小任务的结果。 当我试图将一个ojbect保存到传输请...

  • <strong>网站空间_mysql数据库概述_企业级</strong> 网站空间_mysql数据库概述_企业级

    欢迎回到saps/4HANA云用例系列的第三部分。在过去的两周里,我们研究了在数字经济中非常重要的价值杠杆的三个维度中的两个。为了使企业的数字化转型取得成功,有必要了解发生了...

  • <strong>腾讯云_商务中国域名注册_新注册优惠</strong> 腾讯云_商务中国域名注册_新注册优惠

    本博客旨在提供实施所谓"生日活动"的提示。 生日活动的商业目的是每天向所有客户或联系人发送"生日快乐"邮件,在各自的日子庆祝生日。 SAP Hybris Marketing的起点是一个动态的目标群...

  • <strong>中间件_ftp服务器怎么登陆_精选特惠</strong> 中间件_ftp服务器怎么登陆_精选特惠

    在组织制定有效的数据管理计划之前,他们必须首先了解数据管理在内存系统时代是如何演变的。 像S/4HANA这样的内存系统与其他传统企业系统不同,具有内置的数据管理功能。这是因...

  • <strong>香港服务器_百度云平台_新注册优惠</strong> 香港服务器_百度云平台_新注册优惠

    要在SIA的BI 4.2 SP4中设置SSL,请执行以下步骤 生成证书使用SSL证书配置SIA 生成证书: 在BI 4.2SP4中,除了根/可信和服务器证书(如下所示)之外,BOE还需要使用sapgenpse 生成PSE证书,以...

  • <strong>云存储_微微一笑很倾城小说百度云_最新</strong> 云存储_微微一笑很倾城小说百度云_最新

    简介 在任何行业,人力资源运营的核心功能之一就是分离流程。绝大多数离职都是自愿辞职。因此,使流程自动化并获取与之相关的所有基本信息是非常必要的。 业务挑战 成功因素...

  • <strong>数据库服务器_安徽高端网站建设_便宜的</strong> 数据库服务器_安徽高端网站建设_便宜的

    如您所知,从HANA的SP09开始,我们就可以使用EIM服务作为HANA的一部分,即SDI和SDQ。这些服务允许您通过我们称为SDA(智能数据访问)的联合功能虚拟地从外部数据库加载数据,或通过...

  • <strong>谷歌云_腾讯云ocr文字识别_限量秒杀</strong> 谷歌云_腾讯云ocr文字识别_限量秒杀

    通知是让用户了解需要及时采取行动或注意的情况的一种很好的方法。这可能是刚刚发生的事件的信息,也可能是需要立即关注的工作流任务。fiori2.0最值得期待的特性之一是通知中心...