Book contents
- Frontmatter
- Contents
- FOREWORD
- PREFACE
- INTRODUCTION
- 1 A DIAGRAM FOR OBJECT-ORIENTED PROGRAMS
- 2 CONSTRUCTING ABSTRACTIONS FOR OBJECT-ORIENTED APPLICATIONS
- 3 PLAYRGOUND: AN OBJECT ORIENTED SIMULATION SYSTEM WITH AGENT RULES FOR CHILDREN OF ALL AGES
- 4 A LABORATORY FOR TEACHING OBJECT-ORIENTED THINKING
- 5 THINK LIKE AN OBJECT
- 6 WHY STUDY SMALLTALK IDIOMS?
- 7 THE DREADED SUPER
- 8 ABSTRACT CONTROL IDIOMS
- 9 VALUEMODEL IDIOMS
- 10 COLLECTION IDIOMS
- 11 AN OBJECTWORKS\SMALLTALK 4.1 WRAPPER IDIOM
- 12 A SHORT INTRODUCTION TO PATTERN LANGUAGE
- 13 WHOLE LOTTA SMALLTALK: THE TECHNOLOGY
- 14 INSTANCE-SPECIFIC BEHAVIOR: HOW AND WHY
- 15 INSTANCE-SPECIFIC BEHAVIOR: DIGITALK IMPLEMENTATION AND THE DEEPER MEANING OF IT ALL
- 16 TO ACCESSOR OR NOT TO ACCESSOR
- 17 INHERITANCE: THE REST OF THE STORY
- 18 INHERITANCE: THE REST OF THE STORY (CONT.)
- 19 HELPER METHODS AVOID UNWANTED INHERITANCE
- 20 IT'S NOT JUST THE CASE
- 21 CRC: FINDING OBJECTS THE EASY WAY
- 22 DEATH TO CASE STATEMENTS
- 23 WHERE DO OBJECTS COME FROM?
- 24 PATTERNS AND SOFTWARE DEVELOPMENT
- 25 DISTRIBUTED SMALLTALK
- 26 WHERE DO OBJECTS COME FROM? FROM VARIABLES AND METHODS
- 27 BIRDS, BEES, AND BROWSERS—OBVIOUS SOURCES OF OBJECTS
- 28 USING PATTERNS: DESIGN
- 29 PATTERNS GENERATE ARCHITECTURES
- 30 SIMPLE SMALLTALK TESTING
- 31 ARCHITECTURAL PROTOTYPE: TELEVISION REMOTE CONTROL
- 32 DEMAND LOADING FOR VISUALWORKS
- 33 GARBAGE COLLECTION REVEALED
- 34 WHAT? WHAT HAPPENED TO GARBAGE COLLECTION?
- 35 SUPER + 1
- 36 CLEAN CODE: PIPE DREAM OR STATE OF MIND?
- 37 A MODEST META PROPOSAL
- 38 USES OF VARIABLES: TEMPS
- 39 VARIABLES OF THE WORLD
- 40 PATTERNS 101
- 41 FAREWELL AND A WOOD PILE
- AFTERWORD
- INDEX
2 - CONSTRUCTING ABSTRACTIONS FOR OBJECT-ORIENTED APPLICATIONS
JOOP, July–August, 1989
Published online by Cambridge University Press: 04 August 2010
- Frontmatter
- Contents
- FOREWORD
- PREFACE
- INTRODUCTION
- 1 A DIAGRAM FOR OBJECT-ORIENTED PROGRAMS
- 2 CONSTRUCTING ABSTRACTIONS FOR OBJECT-ORIENTED APPLICATIONS
- 3 PLAYRGOUND: AN OBJECT ORIENTED SIMULATION SYSTEM WITH AGENT RULES FOR CHILDREN OF ALL AGES
- 4 A LABORATORY FOR TEACHING OBJECT-ORIENTED THINKING
- 5 THINK LIKE AN OBJECT
- 6 WHY STUDY SMALLTALK IDIOMS?
- 7 THE DREADED SUPER
- 8 ABSTRACT CONTROL IDIOMS
- 9 VALUEMODEL IDIOMS
- 10 COLLECTION IDIOMS
- 11 AN OBJECTWORKS\SMALLTALK 4.1 WRAPPER IDIOM
- 12 A SHORT INTRODUCTION TO PATTERN LANGUAGE
- 13 WHOLE LOTTA SMALLTALK: THE TECHNOLOGY
- 14 INSTANCE-SPECIFIC BEHAVIOR: HOW AND WHY
- 15 INSTANCE-SPECIFIC BEHAVIOR: DIGITALK IMPLEMENTATION AND THE DEEPER MEANING OF IT ALL
- 16 TO ACCESSOR OR NOT TO ACCESSOR
- 17 INHERITANCE: THE REST OF THE STORY
- 18 INHERITANCE: THE REST OF THE STORY (CONT.)
- 19 HELPER METHODS AVOID UNWANTED INHERITANCE
- 20 IT'S NOT JUST THE CASE
- 21 CRC: FINDING OBJECTS THE EASY WAY
- 22 DEATH TO CASE STATEMENTS
- 23 WHERE DO OBJECTS COME FROM?
- 24 PATTERNS AND SOFTWARE DEVELOPMENT
- 25 DISTRIBUTED SMALLTALK
- 26 WHERE DO OBJECTS COME FROM? FROM VARIABLES AND METHODS
- 27 BIRDS, BEES, AND BROWSERS—OBVIOUS SOURCES OF OBJECTS
- 28 USING PATTERNS: DESIGN
- 29 PATTERNS GENERATE ARCHITECTURES
- 30 SIMPLE SMALLTALK TESTING
- 31 ARCHITECTURAL PROTOTYPE: TELEVISION REMOTE CONTROL
- 32 DEMAND LOADING FOR VISUALWORKS
- 33 GARBAGE COLLECTION REVEALED
- 34 WHAT? WHAT HAPPENED TO GARBAGE COLLECTION?
- 35 SUPER + 1
- 36 CLEAN CODE: PIPE DREAM OR STATE OF MIND?
- 37 A MODEST META PROPOSAL
- 38 USES OF VARIABLES: TEMPS
- 39 VARIABLES OF THE WORLD
- 40 PATTERNS 101
- 41 FAREWELL AND A WOOD PILE
- AFTERWORD
- INDEX
Summary
There are two notable points to make about this paper. First, it is one of the first times Ward and I published any pattern-related material (we presented some stuff at OOPSLA 87 in Orlando, I in Norm Kerth's “Where Do Objects Come From” workshop, Ward on a panel). Second, it argues that the worst problem of reuse is one of communication, not technology or economics.
The paper started out life as a Tektronix technical report. Ward and I had the habit of writing up just about everything we did as a TR. After we had written this, I think we submitted it as a position paper for some conference or workshop. Somehow, JOOP got hold of a copy and contacted us about publishing it.
The paper can be summed up as: “We created two sets of abstractions. The first was communicated as literate source code. The second was communicated as patterns for its reuse. The first set of objects was misused; the second was used correctly. We conclude that the problem of reuse is one of effectively communicating the intent of the code.”
MAKING ABSTRACTIONS
We have found Smalltalk's notion of objects communicating with messages an effective vehicle for the express of algorithms and data structures in a form isolated from the details of an application program. The process of isolation, called abstraction, is emerging as a principal activity of programmers.
- Type
- Chapter
- Information
- Kent Beck's Guide to Better SmalltalkA Sorted Collection, pp. 15 - 24Publisher: Cambridge University PressPrint publication year: 1997