BibSonomy :: bibtex  ::

tag user group author concept BibTeX key search:all search:gron
A blue social bookmark and publication sharing system.
tags · relations · groups · popular
help · blog · about
login · register
gron's BibTeX entry:  

Traits --- Composing Classes from Behavioral Building Blocks

2005.
Authors: Nathanael Sch{\"a}rli
URL: http://www.iam.unibe.ch/~scg/Archive/PhD/schaerli-phd.pdf
Description: Traits
Tags: SDSeminar Traits
Abstract: Inheritance is well-known and accepted as a fundamental mechanism for reuse in object-oriented languages. Unfortunately, the main variants --- single inheritance, multiple inheritance, and mixin inheritance --- all suffer from conceptual and practical problems related to software reuse and robustness with respect to changes. In a rst part of this thesis, we identify and illustrate these problems. To overcome these problems, we then present traits, a simple compositional model that extends single inheritance. A trait is essentially a (parameterized) set of methods; it serves as a behavioral building block for classes and is the primitive unit of code reuse. We develop a formal model of traits that establishes how traits can be composed to form other traits or classes, and we describe how we implemented traits in Squeak Smalltalk by bootstrapping a new language kernel. We present our experimental validation in which we apply traits to refactor parts of the Smalltalk kernel and library, and we develop a programming methodology around the usage of traits and the trait browser, the tool that we implemented to take full advantage of the availability of traits in the Squeak programming environment.
| URL | BibTeX  
@phdthesis{PHD,
title = {{Traits --- Composing Classes from Behavioral Building Blocks}},
author = {Nathanael Sch{\"a}rli},
month = {February},
school = {University of Berne},
url = {http://www.iam.unibe.ch/~scg/Archive/PhD/schaerli-phd.pdf},
year = {2005},
description = {Traits},
abstract = {Inheritance is well-known and accepted as a fundamental mechanism for reuse in object-oriented languages. Unfortunately, the main variants --- single inheritance, multiple inheritance, and mixin inheritance --- all suffer from conceptual and practical problems related to software reuse and robustness with respect to changes. In a rst part of this thesis, we identify and illustrate these problems. To overcome these problems, we then present traits, a simple compositional model that extends single inheritance. A trait is essentially a (parameterized) set of methods; it serves as a behavioral building block for classes and is the primitive unit of code reuse. We develop a formal model of traits that establishes how traits can be composed to form other traits or classes, and we describe how we implemented traits in Squeak Smalltalk by bootstrapping a new language kernel. We present our experimental validation in which we apply traits to refactor parts of the Smalltalk kernel and library, and we develop a programming methodology around the usage of traits and the trait browser, the tool that we implemented to take full advantage of the availability of traits in the Squeak programming environment.},
file = {schaerli-phd.pdf:Traits\\schaerli-phd.pdf:PDF}, cvs = {NSchaerliPhD},
keywords = {SDSeminar Traits }
}