Designing with Static Members
Discussing when use static members in Java programs
|
Designing with Runtime Class Information
Discussing when to use runtime class information in Java programs
|
Designing with Dynamic Extension
Discussing when to use dynamic extension in Java programs
|
Designing with Interfaces
Discussing when to use interfaces
|
Composition Versus Inheritance
Discussing how to choose between composition and inheritance
|
Event Generator Idiom
Discussing an idiom that shows how to use nofication in Java program designs
|
Canonical Object Idiom
Discussing a base level functionality for classes
|
To Bean or Not To Bean
Text of an e-mail debate on when to make classes into JavaBeans
|
When To Bean?
Discussing when make classes into JavaBeans
|
Designing For Thread Safety
Discussing when and how to make classes thread-safe
|
Designing With Exceptions
Discussing when and how to use exceptions
|
The Hotspot Virtual Machine
Discussing the Hotspot Virtual Machine and its impact on Java program design
|
Finalization and Cleanup
Discussing the end of object lives
|
Maximizing Method Cohesion
Discussing how to chop up responsibilities into methods
|
Designing Fields and Methods
Discussing the nuts and bolts of designing fields and methods
|
The Set/Get Question
Discussing the merits of methods that give the clients a view of an
object's attributes versus methods that perform services
|
Flexibility as a Design Goal
A look at different people's ideas and opinions on
software design and the overall software development process
|