何以ABAP开发者需要运用面向对象技术

ABAP对面向对象的帮忙已有十多年的野史,但是在生产实践中,我们对这门技术的行使非凡少于。

一头,面向过程的惯性长时间存在着;另一方面,对于绝大多数二次开发工作而言,似乎并从未充裕的说辞促使开发者使用面向对象技术。二者组合的结果,就是目前多数ABAP开发者还在只写面向过程的代码。

我不觉得面向对象是足以缓解开发中各样题材的“银弹”,不过它到底是一项经过了考验的技艺。在二〇一七年的现行,多数人一度认同面向对象给大家带来了优良的补益。面向对象的两个着力特性、六个着力尺度已经改成路人皆知的政工。关于它的数见不鲜的益处,本文不打算再复述,毕竟相关的篇章探究一度太多。

此外,对于ABAP开发而言,它还有一对附加的便宜。在下文,我会分别介绍它们。

 

正文链接:http://www.cnblogs.com/hhelibeb/p/7641965.html

转载请注解

1, 避免过时语法

咱俩精晓,在abap的扬言语法中,type是直接讲明类型,like是参考申明类型。很多新手在入门时会被like与type的分别弄晕,甚至为了不出错,完全接纳like代替type。而abap是永葆为变量起一个和档次名相同的变量名的,如若程序存在着和序列名相同的变量名,开发者又不知晓like和type的界其它话,代码中难免会出错。类似的“小知识”给开发者带来了不小的承担。即使这种特点已经在文档中标记为obsolete,可是,出于兼容性之类的设想,SAP仍旧允许它们的采用。

可是在OO语境中,语法检查器会对过时语法报错,这使得开发者可以安心抛开某些ABAP中存在的野史包袱,不需要再勉强自己记住那多少个无谓的条条框框。

其余,SAP也为面向对象编程提供了额外的工具,比如单元测试类生成。假诺仍旧利用form的话,就不得不手写单元测试类了。

4858mgm 1

 

2, 了然标准程序

绝对于客户自定义开发的始末,SAP系统中已有的程序被大家称为标准程序。SAP已经在系统规范程序中大量用到了面向对象技术,在好几产品和模块中,可以说面向对象成为了主流。比如CRM中的4858mgm,BOL,还有SAP正在放大的框架BOPF

ABAP的开销工作是基于SAP系统的,对专业程序的阅读精晓、调试、修改(增强)是ABAP程序员工作的要紧内容。如若开发者没有早晚的面向对象编程经验的话,就很难对那多少个大量施用了面向对象技术的先后举办加强开发,也难以对它们举行跟踪与调节,从而给工作牵动诸多不便。

在温馨编写面向对象程序的长河中,大家得以逐渐了然集成、多态等概念,熟习与面向对象相关相关的语法,借此加强协调对标准代码的领会能力。

3, 从另一个角度自省

随着工作的举行和个人控制的知识的变化,我们会对同一段功效发生新的看法,从而用新的代码来拓展表述,由此不少人有重构甚至重写代码的习惯。不过人的耐性总是有限的,重构三遍,感觉温馨的代码已经“差不多了”,已经可复用、便于扩展,甚至早已“接近完美”,无需再改。这是难以制止的工作,因为,人的大脑有疏失谙习的东西的辅助,同样的男/女朋友,看久了,便会忽视他们的美丑。怎么着促进团结进一步自省?使用新技巧或者是一个方法。

在尝试把代码转换为面向对象的长河中,新技巧的接纳会促使大家从另一个角度看待曾经过于熟稔以至于被忽略的代码,激发大脑进一步运作,从而拿到新的见解和诱导。原本已经定位的代码,又有何不可再度重构了。当然,这种变更不必然总是好的。面向对象的一个引起争议的地点,就是它导致众多程序员、特别是中等水平的程序员,会不自觉地匡助于“过度设计”,无必要地计划多余的接口和连续关系、使用各类设计形式,为扩展程序的复杂度。但对于个体而言,相相比收益,这或多或少代价还可以接受的,毕竟,没有犯错,又何来发展啊?

总结

在SAP的社会风气里,面向对象技术已经颇具不亚于面向过程的地点,并且还在巩固地提高中。本文无意鼓吹其中的一者替代另一个,然则,对ABAP程序员而言,精晓和运用面向对象技术的力量已经变得分外必要。最终,引用一句名言作为完结:最好的古生物不是最强的也不是最了解的,而是最适于变化的。

 

 

相关文章