首页> 外文学位 >Unifying aspect- and object-oriented program design.
【24h】

Unifying aspect- and object-oriented program design.

机译:统一面向方面和面向对象的程序设计。

获取原文
获取原文并翻译 | 示例

摘要

The dominant family of aspect-oriented programming (AOP) languages, namely the family of languages based on the AspectJ model, provides aspects as a new abstraction mechanism separate from classes. Aspects are promoted as means to modularize certain traditionally non-modularized concerns. The design decision to separate aspects and classes, however, reduces the conceptual integrity of the language model. The resulting language model is non-orthogonal and asymmetric with respect to the key capabilities of aspects and classes. Furthermore, these asymmetries impair our ability to easily separate important classes of concerns namely, integration and higher-order concerns, and distorts our conceptual model of how to structure software systems with AOP.; In this dissertation, I show that aspects as a separate abstraction mechanism are not essential to aspect-oriented programming. Instead a new construct, quantified binding, similar to the event-handler binding in the implicit invocation style, is at the core of aspect-oriented programming. I present a language model in which aspects and classes are unified. Key technical contributions include: support for aspect instantiation under program control, instance-level advising, advising as a general alternative to object-oriented method invocation and overriding, and the provision of a separate join-point-method binding construct. The new language model is at once simpler and more expressive. The simplification is manifested by the reduction of specialized constructs in favor of uniform orthogonal constructs. The expressiveness is manifested by the improvement in the modularization of integration and higher-order concerns.
机译:面向方面的编程(AOP)语言的主要家族,即基于AspectJ模型的语言家族,提供了方面作为与类分离的新抽象机制。方面被提倡作为模块化某些传统上未模块化关注点的手段。但是,将方面和类分开的设计决策会降低语言模型的概念完整性。就方面和类的关键功能而言,最终的语言模型是非正交且不对称的。此外,这些不对称性削弱了我们轻松分离重要的关注类别(即集成和高级关注)的能力,并且扭曲了我们关于如何使用AOP构建软件系统的概念模型。在本文中,我展示了将方面作为一种单独的抽象机制对于面向方面的编程并不是必不可少的。取而代之的是,面向隐式编程的核心是一种新的构造,即量化绑定,类似于隐式调用样式中的事件处理程序绑定。我提出了一种语言模型,其中各个方面和类是统一的。关键技术贡献包括:支持程序控制下的方面实例化,实例级建议,作为面向对象方法调用和重写的一般替代方案提供建议,以及提供单独的连接点方法绑定结构。新的语言模型既简单又富有表现力。简化是通过减少专用结构,而采用统一的正交结构来体现的。通过集成的模块化和高级关注点的改进来体现表达力。

著录项

  • 作者

    Rajan, Hridesh.;

  • 作者单位

    University of Virginia.;

  • 授予单位 University of Virginia.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2005
  • 页码 178 p.
  • 总页数 178
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类 自动化技术、计算机技术;
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号