既然讲到ABAP,你应该也懂一些技术,我就以例子来说吧
ABAP程序:(SE38访问)
即Report程序,首先在该类程序中可以进行报表的开发,在Report程序中可以用WRITE语法输出报表,也可以在REPORT程序中创建选择屏幕、自定义屏幕等,但是REPORT程序没有参数,无法直接传值,如果想要在REPORT程序之间传递数据,需要用到系统参数,比较麻烦
功能模块:(SE37)
即FUNCTION MODULE,听名字也知道,类似于C语言中的函数,或者面向对象的方法,可以有输入、输出、Table参数,功能模块一般用来封装业务功能(如检查、计算、添加、删除等),在功能模块中不能使用WRITE语法输出数据,整体来说,功能模块多用于被其它程序调用(以CALL FUNCTION的形式)
增强:(BAdI是SE18、SE19,Customer-Exit是CMOD)
SAP系统实施的时候,最理想的状态是产品符合客户需求,就像你买件衣服,尺寸正好,但大多数情况不可能这么理想,对于客户提出的需求,SAP实施时优先考虑配置(SAP系统非常强大、成熟),在标准程序无法实现客户需求的时候,会考虑对标准程序进行增强,增强不会影响标准代码,不会影响系统升级,比较常用的有BAdI增强、Customer-Exit增强、Enhancement等,直接修改程序是逼不得已才会做的,风险很高
接口:(SE24)
接口是面向对象的概念,SAP系统在发展过程中(开始是面向过程),也引入了面向对象的概念,在ABAP中调用类的方法和调用功能模块很类似,对于SAP标准的类,用起来很容易上手(学过面向对象的),只是如果自定义类的话,在ABAP中比较麻烦,这一点我觉得SAP做的不太好
命令:是程序的一部分,但不是程序
比如在运行中输入的是命令,但在运行这个命令是就会调用到运行的内在的程序,把命令付给程序的待命令区,然后通过程序运行命令 可能我说的不正确,有错请纠正
C语言的程序模块称为函数。
模块化程序设计是将一个大的任务分解成若干个小任务,再将小任务分解成更小的任务,直到每一个任务都只完成一个独立功能。这样的每个任务都叫做模块,C语言中模块是用函数来实现。
扩展资料:
一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言中,子程序的作用是由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。
在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。
函数分为全局函数、全局静态函数;在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。
参考资料来源:百度百科-函数
模块就是根据开发内容划分,比如会员模块,购物模块,新闻模块,广告模块
在交互模式下, Lu a 不断的显示提示符,并等待下一行输入。 一旦读到一行, 首先试着把这行解释为一个表达式。 如果成功解释,就打印表达式的值。 否则,将这行解释为语句。 如果你写了一行未完成的语句, 解释器会用一个不同的提示符来等待你写完。
当脚本中出现了未保护的错误, 解释器向标准错误流报告错误。 如果错误对象并非一个字符串,但是却有元方法 __tostring 的话, 解释器会调用这个元方法生成最终的消息。 否则,解释器将错误对象转换为一个字符串,并把栈回溯信息加在前面。
如果正常结束运行, 解释器会关闭主 L ua 状态机 ( l。a_close)。 脚本可以通过调用 osexit 来结束,以回避这个步骤。
为了让 L ua 可以用于 Unix 系统的脚本解释器。 独立版解释器会忽略代码块的以 # 打头的第一行。 因此,Lu a 脚本可以通过 chmod +x 以及 #! 形式变成一个可执行文件。 类似这样
(当然, Lu a 解释器的位置对于你的机器来说可能不一样。 如果 lu a 在你的 PATH 中, 写成
这里我们列出了把程序从 Lua 52 迁移到 Lua 53 会碰到的不兼容的地方。 你可以在编译 Lua 时定义一些恰当的选项(), 来回避一些不兼容性。 然而,这些兼容选项以后会移除。
Lua 的版本更替总是会修改一些 C API 并涉及源代码的改变。 例如一些常量的数字值,用宏来实现一些函数。 因此,你不能假设在不同的 Lua 版本间可以做到二进制兼容。 当你使用新版时,一定要将使用了 Lu a API 的客户程序重新编译。
同样,Lu a 版本更替还会改变预编译代码块的内部呈现方式; 在不同的 Lu a 版本间,预编译代码块不兼容。
官方发布版的标准路径也可能随版本变化。
Lua 52 到 Lua 53 最大的变化是引入了数字的整数子类型。 虽然这个变化不会影响“一般”计算, 但一些计算 (主要是涉及溢出的) 会得到不同的结果。
你可以通过把数字都强制转换为浮点数来消除差异 (在 Lu a 52 中,所有的数字都是浮点数)。 比如你可以将所有的常量都以 0 结尾, 或是使用 x = x + 00 来转换一个变量。 (这条建议仅用于偶尔快速解决一些不兼容问题; 这不是一条好的编程准则。 好好写程序的话,你应该在需要使用浮点数的地方用浮点数, 需要整数的地方用整数。)
把浮点数转为字符串的地方,现在都对等于整数的浮点数加了 0 后缀。 (例如,浮点数 20 会被打印成 20, 而不是 2。) 如果你需要定制数字的格式,就必须显式的格式化它们。
(准确说这个不是兼容性问题, 因为 Lua 并没有规定数字如何格式化成字符串, 但一些程序假定遵循某种特别的格式。)
分代垃圾收集器没有了。 (它是 Lu a 52 中的一个试验性特性。)
功能模块是指为某个或多个对象做具体工作的模块,里面封装的是一些行为,以及实现在这些行为的方法,这些方法的具体代码基本都在模块中得已实现
也就是说你的程序有哪些方法,都是干什么用的,有什么功能
这是我所理解的
根据不同的测试阶段,测试可以分为单元测试、集成测试、系统测试和验收测试。
体现了测试由小到大、又内至外、循序渐进的测试过程和分而治之的思想。
单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”。
集成测试界于单元测试和系统测试之间,起到“桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既验证“设计”,又验证“需求”。
系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合“需求规格说明书”。
验收测试与系统测试相似,主要区别是测试人员不同,验收测试由用户执行。
黑盒测试不考虑程序内部结构和逻辑结构,主要是用来测试系统的功能是否满足需求规格说明书。一般会有一个输入值,一个输入值,和期望值做比较。
白盒测试主要应用在单元测试阶段,主要是对代码级的测试,针对程序内部逻辑结构,测试手段有:语句覆盖、判定覆盖、条件覆盖、路径覆盖、条件组合覆盖
集成测试主要用来测试模块与模块之间的接口,同时还要测试一些主要业务功能。
以上就是关于abap程序和功能模块是什么关系全部的内容,包括:abap程序和功能模块是什么关系、命令是程序模块吗、c语言的程序模块称为( )等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)