Special

Introducing the “Welcome to Xojo” Bundle!

New to Xojo and looking for guidance? We've put together a terrific bundle to welcome you! Xojo Bundle

This bundle includes six back issues of the magazine -- all of year 20 in printed book and digital formats -- plus a one-year subscription (beginning with 21.1) so you'll be learning all about Xojo for the next year. It's the perfect way to get started programming with Xojo. And you save as much as $35 over the non-bundle price!

This offer is only available for a limited time as supplies are limited, so hurry today and order this special bundle before the offer goes away!

Recent issues

Article Preview


Buy Now

Issue 2.1

COLUMN

Information Hiding

Issue: 2.1 (August/September 2003)
Author: Charles Yeomans
Author Bio: Charles Yeomans is a software developer in Lexington, Kentucky.
Article Description: No description available.
Article Length (in bytes): 5,170
Starting Page Number: 36
Article Number: 2117
Related Web Link(s):

http://www.acm.org/classics/may96/
http://www.javaworld.com/javaworld/jw-05-2001/jw-0518-encapsulation.html

Excerpt of article text...

Information hiding is a fundamental principle of software design. Unfortunately, the idea, which has been around for some thirty years, has become lost in a welter of buzzwords and methodologies.

Information hiding is the idea that each module of a program is "characterized by its knowledge of a design decision which it hides from all others", as described by David Parnas in a seminal 1972 paper, "On the Criteria to Be Used in Decomposing Systems into Modules". Furthermore (paraphrasing Parnas), information hiding dictates that the interface of a module be chosen so as to reveal as little as possible about its inner workings.

Fred Brooks, author of The Mythical Man-Month, calls information hiding "an intellectual ancestor of object oriented (OO) programming". It is indeed true that if you pick up most any book on object oriented design (OOD) and examine the key points, you'll likely find that they are paraphrases or corollaries of information hiding ("design for change", "find the objects", "assign responsibilities").

...End of Excerpt. Please purchase the magazine to read the full article.