Evaluating Software Design Patterns
— the "Gang of Four" patterns implemented in Java 6
A B C D E F G H I K L M N O P R S T U V W Z

D

DanishAlphabetSequence - Enum in dk.rode.thesis.singleton
A singleton alphabet sequence for letters in the Danish alphabet: a though z as well as æ, ø, and å, all lower-cased.
DanishAlphabetSequence() - Constructor for enum dk.rode.thesis.singleton.DanishAlphabetSequence
Private no-arg singleton constructor.
date - Variable in class dk.rode.thesis.observer.DateSequence
The current date in milliseconds.
dateFormat - Variable in class dk.rode.thesis.observer.BirthdayRegistry
The date format used to parse string date representations into actual dates.
DateSequence - Class in dk.rode.thesis.observer
An observable date sequence is a sequence that will advance an initial date by one day each time next() is invoked and then notify relevant observers of its state changes.
DateSequence() - Constructor for class dk.rode.thesis.observer.DateSequence
No-arg constructor.
DateSequence(Date) - Constructor for class dk.rode.thesis.observer.DateSequence
Constructor.
DateSequence(Date, int) - Constructor for class dk.rode.thesis.observer.DateSequence
Constructor.
DateSequence(Date, Date) - Constructor for class dk.rode.thesis.observer.DateSequence
Constructor.
DateSequence(DateSequence) - Constructor for class dk.rode.thesis.observer.DateSequence
Copy constructor.
dateValued - Variable in class dk.rode.thesis.visitor.CountingVisitor
Number of visitable sequences that delivered Date values.
DateValuedVisitableSequence - Class in dk.rode.thesis.visitor
A date valued visitable sequence allows any sequence delivering Date values to become value visitable using the SequenceValueVisitor.visitDateValued(Sequence, Object) visitation method and is type visitable for any known sub-interface of Sequence that is implemented by the sequence.
DateValuedVisitableSequence(Sequence<Date>) - Constructor for class dk.rode.thesis.visitor.DateValuedVisitableSequence
Constructor.
DecoratedPolicy - Enum in dk.rode.thesis.decorator
Additional policies for formatting decorated sequences into char sequences (not part of the core Decorator implementation).
DecoratedPolicy() - Constructor for enum dk.rode.thesis.decorator.DecoratedPolicy
 
defaultCollection - Variable in class dk.rode.thesis.abstractfactory.CollectionValueFactory
The default collection to use in case the creation process is not supplied an argument.
defaultMinMax - Variable in class dk.rode.thesis.abstractfactory.RangeValueFactory
The default range for the created generators.
digits - Static variable in class dk.rode.thesis.meta.model.DigitSequence
All digits as elements.
digits - Static variable in class dk.rode.thesis.meta.model.HexDigitSequence
All hex digits as elements.
DigitSequence - Class in dk.rode.thesis.meta.model
A digit sequence contains the 10 digits in the decimal system, in order from 0 to 9.
DigitSequence() - Constructor for class dk.rode.thesis.meta.model.DigitSequence
No-arg constructor.
DigitSequence(DigitSequence) - Constructor for class dk.rode.thesis.meta.model.DigitSequence
Copy constructor.
direction - Variable in class dk.rode.thesis.memento.RangeSequence
True to return the next higher sequence value ("forward"), false to return previous values ("reverse")
directory - Variable in class dk.rode.thesis.templatemethod.FileSequence
The directory where the files are read from.
discard(Class<S>) - Method in class dk.rode.thesis.singleton.StatefullSingletonRegistry
Discards the reference to the singleton instance of the type supplied as type, if such a reference is kept by this registry.
dk.rode.thesis.abstractfactory - package dk.rode.thesis.abstractfactory
Implementations and examples of the Abstract Factory design pattern [Gamma95, p.87].
dk.rode.thesis.adapter - package dk.rode.thesis.adapter
Implementations and examples of the Adapter design pattern [Gamma95, p.139].
dk.rode.thesis.bridge - package dk.rode.thesis.bridge
Implementations and examples of the Bridge design pattern [Gamma95, p.151].
dk.rode.thesis.builder - package dk.rode.thesis.builder
Implementations and examples of the Builder design pattern [Gamma95, p.97].
dk.rode.thesis.chainofresponsibility - package dk.rode.thesis.chainofresponsibility
Implementations and examples of the Chain of Responsibility design pattern [Gamma95, p.223].
dk.rode.thesis.command - package dk.rode.thesis.command
Implementations and examples of the Command design pattern [Gamma95, p.233].
dk.rode.thesis.composite - package dk.rode.thesis.composite
Implementations and examples of the Composite design pattern [Gamma95, p.163].
dk.rode.thesis.decorator - package dk.rode.thesis.decorator
Implementations and examples of the Decorator design pattern [Gamma95, p.175].
dk.rode.thesis.facade - package dk.rode.thesis.facade
Implementations and examples of the Facade design pattern [Gamma95, p.185].
dk.rode.thesis.factorymethod - package dk.rode.thesis.factorymethod
Implementations and examples of the Factory Method design pattern [Gamma95, p.107].
dk.rode.thesis.flyweight - package dk.rode.thesis.flyweight
Implementations and examples of the Flyweight design pattern [Gamma95, p.195].
dk.rode.thesis.interpreter - package dk.rode.thesis.interpreter
Implementations and examples of the Interpreter design pattern [Gamma95, p.243].
dk.rode.thesis.iterator - package dk.rode.thesis.iterator
Implementations and examples of the Iterator design pattern [Gamma95, p.257].
dk.rode.thesis.mediator - package dk.rode.thesis.mediator
Implementations and examples of the Mediator design pattern [Gamma95, p.273].
dk.rode.thesis.memento - package dk.rode.thesis.memento
Implementations and examples of the Memento design pattern [Gamma95, p.283].
dk.rode.thesis.meta - package dk.rode.thesis.meta
Defines annotations and enumerations corresponding to "Gang of Four" classifications and participants, as well as annotations used to annotate actual source code to identify pattern participants.
dk.rode.thesis.meta.log - package dk.rode.thesis.meta.log
Defines the simple log model used throughout this project, including system out loggers and file loggers.
dk.rode.thesis.meta.model - package dk.rode.thesis.meta.model
Defines the common model objects used, primarily sequences and various general implementations used in the different evaluations.
dk.rode.thesis.meta.reflect - package dk.rode.thesis.meta.reflect
Various reflection utilities and classes.
dk.rode.thesis.meta.reflect.proxy - package dk.rode.thesis.meta.reflect.proxy
Utilities to create dynamic proxies.
dk.rode.thesis.meta.test - package dk.rode.thesis.meta.test
Various tests.
dk.rode.thesis.meta.util - package dk.rode.thesis.meta.util
Various utility classes and functions.
dk.rode.thesis.observer - package dk.rode.thesis.observer
Implementations and examples of the Observer design pattern [Gamma95, p.293].
dk.rode.thesis.prototype - package dk.rode.thesis.prototype
Implementations and examples of the Prototype design pattern [Gamma95, p.117].
dk.rode.thesis.proxy - package dk.rode.thesis.proxy
Implementations and examples of the Proxy design pattern [Gamma95, p.207].
dk.rode.thesis.singleton - package dk.rode.thesis.singleton
Implementations and examples of the Singleton design pattern [Gamma95, p.127].
dk.rode.thesis.state - package dk.rode.thesis.state
Implementations and examples of the State design pattern [Gamma95, p.305].
dk.rode.thesis.strategy - package dk.rode.thesis.strategy
Implementations and examples of the Strategy design pattern [Gamma95, p.315].
dk.rode.thesis.templatemethod - package dk.rode.thesis.templatemethod
Implementations and examples of the Template Method design pattern [Gamma95, p.325].
dk.rode.thesis.visitor - package dk.rode.thesis.visitor
Implementations and examples of the Visitor design pattern [Gamma95, p.331].
doExecute(boolean) - Method in class dk.rode.thesis.command.NextCommand
Sets the result of the execution to the next sequence value.
doExecute(boolean) - Method in class dk.rode.thesis.command.ResetCommand
Resets the sequence value and sets the result to the (new) current value.
doExecute(boolean) - Method in class dk.rode.thesis.command.ReverseCommand
Reverses the sequence if reversible and returns the current (same) value.
doExecute(boolean) - Method in class dk.rode.thesis.command.SequenceCommand
Performs the actual execution of this command.
doNext() - Method in class dk.rode.thesis.observer.AnnotatedObserversSequence
Hook for sub-classes to perform the actual next() operation without notifying observers.
doNext() - Method in class dk.rode.thesis.observer.AnnotatedObserversSequenceDecorator
 
doNext() - Method in class dk.rode.thesis.observer.DateSequence
 
doNext() - Method in class dk.rode.thesis.observer.SequenceObserversSequence
Hook for sub-classes to perform the actual next() operation without notifying observers.
doNext() - Method in class dk.rode.thesis.observer.SequenceObserversSequenceDecorator
 
doTest(Log, int, Sequence<E>, Creator, Boolean, boolean) - Static method in class dk.rode.thesis.command.Main
Executes a given command test for a given sequence.
DuplexDecorator - Class in dk.rode.thesis.decorator
A duplex sequence decorator returns the String value returned by the decorated sequence concatenated with the same value, for example x -> xx.
DuplexDecorator(Sequence<String>) - Constructor for class dk.rode.thesis.decorator.DuplexDecorator
Constructor.
duplicates - Variable in class dk.rode.thesis.bridge.SequenceValueArrayList
True if this list contains duplicates, false if it does not.
duplicates() - Method in class dk.rode.thesis.bridge.SequenceValueArrayList
 
duplicates() - Method in interface dk.rode.thesis.bridge.SequenceValueGenerator
Returns true if this generator will generate duplicate (equivalent) values, false if not.
duplicates() - Method in class dk.rode.thesis.bridge.SequenceValueRange
 
duplicates() - Method in class dk.rode.thesis.bridge.SequenceValueSet
Returns false.

Gunni Rode / rode.dk
A B C D E F G H I K L M N O P R S T U V W Z
Feel free to use and/or modify the Java 6 source code developed for this thesis AT YOUR OWN RISK, but note that the source code comes WITHOUT ANY — and I do mean WITHOUT ANY — form of warranty WHAT SO EVER!

The original thesis and source code are available at rode.dk/thesis.