Using Customizable Properties to make Object Representation a First-class Citizen
Computer Science and Information Systems, Tome 4 (2007) no. 2
Cet article a éte moissonné depuis la source Computer Science and Information Systems website
Many object-oriented programming languages use fields to represent object state. This representation however, cannot be altered sufficiently when subclassing. Moreover, in languages such as Java and C#, proper encapsulation of fields necessitates a lot of boilerplate code. In this paper, we introduce our concept of properties, which are far more flexible for use with inheritance and greatly reduce boilerplate code compared to C# properties. Using our properties makes it easier for programmers to model programs in a more consistent manner. Furthermore, our Properties allow redefining an object's attributes in ways that equal the possibilities for redefinition of virtual methods in many programming languages, which makes them better suited to deal with unanticipated reuse. Specifically, using our construct, it becomes possible to join several superclass attributes into only one at the subclass level, conjointly decreasing memory consumption.
@article{CSIS_2007_4_2_a2,
author = {Koen Vanderkimpen and Marko van Dooren and Eric Steegmans},
title = {Using {Customizable} {Properties} to make {Object} {Representation} a {First-class} {Citizen}},
journal = {Computer Science and Information Systems},
year = {2007},
volume = {4},
number = {2},
url = {http://geodesic.mathdoc.fr/item/CSIS_2007_4_2_a2/}
}
TY - JOUR AU - Koen Vanderkimpen AU - Marko van Dooren AU - Eric Steegmans TI - Using Customizable Properties to make Object Representation a First-class Citizen JO - Computer Science and Information Systems PY - 2007 VL - 4 IS - 2 UR - http://geodesic.mathdoc.fr/item/CSIS_2007_4_2_a2/ ID - CSIS_2007_4_2_a2 ER -
Koen Vanderkimpen; Marko van Dooren; Eric Steegmans. Using Customizable Properties to make Object Representation a First-class Citizen. Computer Science and Information Systems, Tome 4 (2007) no. 2. http://geodesic.mathdoc.fr/item/CSIS_2007_4_2_a2/