Supporting Evolution of Interface Exceptions
نویسندگان
چکیده
Interface exceptions (explicitly declared exceptions that a method can propagate outside) are an inherent part of the interface describing the behaviour of a particular class of objects. Evolution of system behaviour is thus necessarily accompanied by and reflected in the evolution of interface exceptions. While evolution of normal system behaviour is adequately supported by various language mechanisms, such as subtyping and inheritance, few contemporary object-oriented programming languages offer support for the evolution of interface exceptions. Some languages permit specialising and deleting interface exceptions while subtyping, but none of them provides an adequate support for adding exceptions. In this paper we propose two complementary solutions for dealing with additional exceptions introduced while system evolution. To solve the problem of non-conforming interfaces resulting from the addition of new exceptions in a development step, the first proposal uses rescue handlers and the second one employs the forwarding technique.
منابع مشابه
Behaviour-Preserving Evolution of Interface Exceptions
Interface exceptions (explicitly declared exceptions that a method can propagate outside) are an inherent part of the interface describing the behaviour of a particular class of objects. Evolution of system behaviour is thus necessarily accompanied by and reflected in the evolution of interface exceptions. While evolution of normal system behaviour is adequately supported by various language me...
متن کاملچالشهای اخلاقی حمایت از روشهای علم پزشکی در حقوق اختراعات
Human inventions and innovations are generally subject to legal protection but some of these innovations are not subject to legal protection. Medical methods are one of the controversial exceptions of patentability of inventions and opponents and proponents of patent ability of medical methods support propound several reasons to prove their theory. While major arguments of proponents are justif...
متن کاملDesigning for Internal vs. External Discourse in Groupware for Developing Critical Discussion Skills
Groupware for learning may differ from that for other software in a crucial way: optimizing software support for subtasks can degrade overall collaborative learning. This point is illustrated in the context of a software environment for supporting student’s learning to engage in critical discussion of competing scientific theories. Our experience suggests that in applications where a nontrivial...
متن کاملNumerical Modeling of Railway Track Supporting System using Finite-Infinite and Thin Layer Elements
The present contribution deals with the numerical modeling of railway track-supporting systems-using coupled finite-infinite elements-to represent the near and distant field stress distribution, and also employing a thin layer interface element to account for the interfacial behavior between sleepers and ballast. To simulate the relative debonding, slipping and crushing at the contact area betw...
متن کاملA New Single-Display Intelligent Adaptive Interface for Controlling a Group of UAVs
The increasing use of unmanned aerial vehicles (UAVs) or drones in different civil and military operations has attracted attention of many researchers and science communities. One of the most notable challenges in this field is supervising and controlling a group or a team of UAVs by a single user. Thereupon, we proposed a new intelligent adaptive interface (IAI) to overcome to this challenge. ...
متن کامل