Building OO Systems with Roles

By Curtis Poe (‎Ovid‎)
Date: Monday, 3 August 2009 14:25
Duration: 40 minutes
Target audience: Corporate Perl
Tags: inheritance oo roles

This talk will explore the reasoning behind roles, how they're actually used and how we've implemented them at the BBC.

Many object-oriented programming languages (Java) forbid multiple inheritance. Others reverse the inheritance order to better control their API (Beta), and still others add all sorts of bells and whistles to get "safe" inheritance (Eiffel).

Inheritance is being used for sharing behavior when everyone seems to have a different idea about how to overcome its limitations. It's time to think about using roles for shared behavior. They're simple, easy to use and make solving tricky composition problems a trivial affair.

Attended by: