147x Filetype PDF File size 1.83 MB Source: essay.utwente.nl
TwenteResearchandEducationonSoftwareEngineering, DepartmentofComputerScience, Faculty of Electrical Engineering, Mathematics and Computer Science, University of Twente Performingtransformations on .NET Intermediate Language code S.R. Boschman Enschede, August23, 2006 Prof. dr. ir. M. Aksit Dr. ir. L.M.J. Bergmans ¨ Ir. P.E.A. Durr Abstract To express crosscutting concerns in a clear manner, the aspect-oriented programming (AOP) paradigm was introduced. In AOP languages, crosscutting concerns are defined in aspects. Theseaspects are composed, or woven, with components. These components encapsulate func- tionality expressed in traditional object-oriented languages. As the aspect language and component language can be separated, an AOP solution can be implemented independent of the component language. A suitable platform for such an AOP solution is the .NET Framework, since, in principle, this platform can support a wide range of different component languages (i.e. programming languages). This thesis will describe the development of a tool that can weave the aspects with the com- ponents in the .NET Framework environment. The first step is to discuss the Common Inter- mediateLanguage(CIL)inmoredetail,asallprogramminglanguagesinthe.NETFramework maptothisCIL.ThesecondstepistocreateamappingfromAOPconstructstoCILcodestruc- tures. The third step provides an overview of possible approaches to perform the weaving of aspects and base components. One of the weaving approaches is based on modifying the CIL code stored in binary files, called assemblies. The fourth, and last, step is the discussion of the creation of the weaver tool. Theresultis the CIL Weaving Tool, which consists of two parts. The first part is the PE Weaver, responsible for creating textual IL files from the assemblies and recreating the assemblies after weaving. The second part is the IL Weaver, which performs the actual weaving on the textual IL files. To define the weave operations that have to be performed by the IL Weaver, a weave specification file has to be supplied. This weave specification file allows the definition of weave points, which are based on AOP constructs.
no reviews yet
Please Login to review.