- 4
- 0
- 约7.45万字
- 约 69页
- 2020-08-22 发布于江苏
- 举报
摘 要
面向对象程序设计 (OOP)是以程序中的对象为核心,而泛型程序设计(GP)
是以类型需求为核心的程序设计范式。泛型程序设计(GP)与面向对象程序设计
(OOP)两者都是在程序设计时除去不稳定的部分,用更加通用的并且效率更高
的部分来构造程序。尽管通用性和效率这两个特性被认为是相互对立的,但是仍
然期望能在程序开发的大多数情况下实现两者之间的平衡,从而在确保类型安全
的前提下加快程序开发的速度。
总结了不同设计风格的主流程序设计语言有关泛型设施的异同。对于面向对
象程序设计语言,以Java 为例,Java 的参数化类型和泛型约束之间紧耦合,描
述的泛型需求过于狭窄,只能称之为窄义的约束;对于动态类型程序设计语言,
以 Python 为例,动态类型语言天然地支持泛型,没有严格的类型定义格式,可
以随时改变参数类型,泛型约束机制近乎没有;对于函数式程序设计语言,以
Scala 为例,Scala 的 Implicits 机制基于面向对象程序设计风格,支持关联类
型,对泛型概念特性有着良好的支持,但依旧具有隐式参数。
研究了现今主流程序设计语言中的泛型约束方法及其安全机制,因为主流语
言其他设施的影响,语言抽象程度不高,难以描述复杂的语义需求,大部分主流
语言对于泛型约束的支持还停留在语法层面,缺乏规范的约束描述语言,难以直
接写出满足需求的泛型约束。以高度抽象的泛型程序设计语言 Apla 为宿主语言
提出了基于完整 GP 类型需求的泛型约束方法,同时支持语法层和语义层的泛型
约束。给出了 Apla 类型系统,使用一阶谓词逻辑公式的形式刻画了基本数据类
型约束,基于代数结构描述了自定义抽象数据类型约束。给出了通用规范的泛型
约束描述语言。提出了 Apla 泛型约束的安全机制,通过约束匹配检测的方式保
证类型安全性。设计了匹配检测算法来判定泛型约束是否满足需求,以实际算法
为例展示了匹配检测的全过程。最后,以 PAR 方法为支撑,在 PAR 平台 C++生成
系统中实现了 Apla 泛型约束安全机制的功能。相较于现有研究,更进一步实现
了完整意义上以类型需求为核心的GP 概念。
关键词: 泛型编程;类型需求;泛型约束方法;泛型约束安全机制;平台
实现
I
Abstract
Abstract: Object-oriented programming (OOP) is a programming paradigm
centered on the objects in a program, while generic programming (GP) is a
programming paradigm centered on type requirements. Generic programming (GP)
and object-oriented programming (OOP) both remove the unstable parts of
programming and construct programs with more generic and efficient parts. Although
the two characteristics of universality and efficiency are considered to be opposed to
each other, it is expected to achieve a balance between the two in most cases of
program development, thus speeding up program development while ensuring type
safety.
This paper summarizes the similarities and differences
您可能关注的文档
- 顶板辐射供冷与贴附射流的室内热环境研究.pdf
- 东方航空公司外汇风险管理研究.pdf
- 东方写意背景下的几位表现性油画家作品分析.pdf
- 冬季北方高校宿舍自然通风开窗对室内环境影响的研究.pdf
- 董其昌行书技法对创作的启示.pdf
- 董事会秘书特征对信息披露质量的影响——基于深圳A股数据的实证研究.pdf
- 董事会特征与中小板上市公司内部控制缺陷披露关系研究.pdf
- 动车车身构件加工设备关键部件结构分析及优化.pdf
- 读者反应论视角下的儿童文学翻译实践报告——以《美国种子:链条》汉译为例.pdf
- 杜甫边地诗研究.pdf
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
原创力文档

文档评论(0)