云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

免备案CDN_中文域名注册多少钱_哪个好

小七 141 0

ABAP中的设计模式-访客(第一部分)

新年不是一片宁静

即将到来的一年-2017-将会非常繁忙(正常情况下),但也比平常有趣得多。我工作中有三件大事。我终于可以在一个高效的应用程序中使用Gateway了,但最疯狂的是,我的公司已经接受了人工智能和机器学习,我还参与了一些ABAP编程来促进这一点。最后一个问题是,我还必须编写一个程序,将一些电子表格上传到SAP。

我还希望10月份去拉斯维加斯的SAP TECHED,毫无疑问,大数据的4,我将在澳大利亚达令港最近重新开放的展览中心参加至少一次SAP会议。我也会对SAP Press的作品做一些书评,从我目前正在阅读的ODATA(以及在现实生活中实际使用的)开始。

因此,毫无疑问,2017年在博客方面会有很多值得写的东西。然而,在我开始之前,有一件事我计划在三年前写在SCN上,但一直没有抽出时间,因为突然不得不开始写书,而不是仅仅阅读别人,Bakers Man

当时(2013年)我刚刚读完了"Head First Design Patterns"一书,读了Igor Barbaric的SAP等效版本,正愉快地将HFDP书中的Java代码翻译成ABAP,看看我是否能在日常工作中得到实实在在的好处。

举个例子,我写了一些关于"装饰者"模式的东西https://blogs.sap.com/2013/03/02/oo-design-patterns-decorator-in-abap/

我倾向于从我感兴趣的一本书或一篇文章中选取一些示例代码,企业软件公司,将其翻译成ABAP,然后开始戳戳和戳戳它,并更改零碎的代码,直到完全无法识别为止我发现罗伯特·马丁(鲍勃叔叔)在2002年写的一本书中有一个非常好的章节是关于"访客"模式的。我本打算让它接受同样的练习,淘客放单平台,即从Java翻译它,如何学习大数据,然后把它翻过来,但一直没有着手。现在是纠正这一点的时候了。在编写一本新的SAP新闻书籍时,它已经介绍了ABAP中的所有设计模式,并查看了有关访问者的内容。我还没有读过那本书,在读完这篇博客之前,我甚至不会考虑这样做,以避免任何抄袭的风险。

当然,我可能会随机地想出完全相同的例子,但幸运的是,没有很多人在他们的例子中使用怪物,所以我认为我是相当安全的。

这是真的,还是仅仅是一个梦?

我确实读过新ABAP设计模式书中的免费章节,但我无法阻止自己。幸运的是它没有提到来访者。我发现有一个问题我已经写了很多遍了。

问题是这样的-说一些东西(比如OO编程)很棒是很好的,但是没有人会相信你,除非你给他们一个具体的例子,他们可以立即联系到,当他们下一次遇到问题时,就使用这个奇妙的新事物(不管它是什么)来解决问题。

许多作家使用了一直流行的"因为我这么说才是好的"技巧,没有更多的细节,然后想知道为什么信息没有被理解。我认为在某种程度上,SAP在解释OO编程时犯下了这个令人发指的罪行,这就是为什么在"ABAP对象"发明16年后,仍有大量的人坚定地生活在程序世界中的原因。当ABAP7.40认证考试似乎鼓励你在方法中使用"经典"异常而不是异常类时,这是没有帮助的。

下一个问题是人们使用不太相关/现实的例子。虽然看起来很神奇,但我自己也被指责过!有些人说我应该在我的例子中使用像销售订单这样的对象,而不是百英尺高的喷火怪物。他们说,前者更准确地代表了90%以上的实际SAP程序员的日常经验。

我们可以整天来回争论,到底是80%还是90%的程序员,但不管怎样,我可以理解这样一种观点,即有些程序员在整个职业生涯中从不做任何怪事相关的编程。我为他们感到非常抱歉。

同样,在新的ABAP设计模式书的免费章节中,作者谈到了某个模式,并说他唯一可能解释它的方法是使用该模式来解决一个实际ABAP程序员永远都不必处理的问题。这有点类似于说"看这个!它真的很好,没有实际应用,但它真的很好"。如果你不得不挣扎,挣扎着想出一个现实生活中的例子,但失败了,那么这就属于"寻找问题的解决方案,找不到一个"篮子"。

BRF加Ca Change

同样地,你可能会说,如果我想到的关于我奇妙解决方案的唯一例子与怪物有关,那么我与现实世界也有类似的脱节。不过,有一个微妙的区别,我将尝试解释我的示例实际来自何处。

如果你阅读我的书中的BRFPlus一章,你会看到客户可用于定制其怪物的各种选项的示例业务逻辑,云机服务器,例如,一个手指可以平衡多少头大象。读完这些规则后,你可能会认为我是在一瓶伏特加一瓶地喝下去之后,被棒球棒击中头部,然后直接编造了这些规则,这是情有可原的。当你在现实生活中遇到一些非常奇怪的事情时,你常常会说"你不能编造这些事情",而那些看似疯狂的商业规则也是如此。它们是我在上一个项目中得到的实际业务需求,我使用BRFPlus在ABAP中编写了一个巨大的业务应用程序来实现它们。很明显,它们实际上并不是关于怪物,而是关于预拌混凝土(我的公司生产的三种核心产品之一),但我所要做的只是找到并替换所有的混凝土专用术语和一个可怕的等价物。此外,事实证明,这些规则一点也不疯狂;一旦理解了上下文,它们就完全有道理了。他们一眼看上去总是很疯狂。

永远不会上当,现代爱情