CSC/ECE 517 Fall 2009/wiki2 5 jn

From Expertiza_Wiki
Revision as of 13:50, 9 October 2009 by InteliSavant (talk | contribs)
Jump to navigation Jump to search

Reflection APIs


Introduction

What is Reflection?

Reflection in programming is a technique in which programs are able to dynamically view and alter their own structure and flow. For example, in reflection one could determine method/variable/class names, add or delete method/variables, alter code to current methods, or simply alter values in variables. In theory there are nearly no bounds to reflection as it directly modifies the binary of the program. The current limitations of this process are directly related to the APIs avaliable for certain languages.


What languages are Supported?

Due to the complexity required to support this majority of the languages that support this feature tend to be object oriented. Some examples of supported languages are Java, Ruby, C#, Perl, PHP, JavaScript, Python, and ActionScript. In this page we will cover a select few of the languages above and what native API support is avaliable for each of the languages.