- solve common design problems without recreating
- tap into a wealth of collected knowledge on
- use patterns at every stage of software development:
architecture, design, and implementation
- understand what does and does not go to make
up a pattern
- understand the beneficial role of patterns in
all aspects of development
- learn and use common patterns for object-oriented
and large-scale design
- appreciate patterns from the strategic level
down to idiomatic examples in Smalltalk
Nontrivial systems include many recurring design
problems whose solutions are commonly repeated
from place to place, and from programmer to programmer.
The essence and basic structure of a solution
may be repeated many times, even though the realization
is different in each case.
Patterns offer a technique for capturing design
and architecture, presenting and communicating
architectural knowledge at all levels of a system,
allowing experience to be understood and distilled.
Patterns allow developers to work on and
understand designs, and are not a basis for automation
of design. This course introduces patterns
from the ground up, presenting principles as well
as concrete examples in UML and Smalltalk.
It develops understanding through lectures, discussion,
and some exercises to reinforce the concepts by
putting them into practice.
The course is suitable for software developers
and designers familiar with Smalltalk.
The course is presented by one of our senior
consultants, each of whom has at least ten years'
experience in software development, and at least
three years' experience as a trainer and consultant
in a diverse range of application areas.
Design and architecture
- what is software architecture?
- describing or defining an architecture
- reuse of knowledge
- patterns in software design
- basic form
- problem and forces
- solution and consequences
- an example - the Composite pattern
- documenting patterns
- documenting pattern use
- pattern catalogues
- the "Gang of Four"
- "Pattern-Oriented Software
- strategic versus tactical patterns
- review of organizational patterns
- review of analysis patterns
- review of architectural patterns
- review of design patterns and idioms
- pattern languages
- basic principles
- Adapter and its variations
- Interface Decoupling
- Role Decoupling
- The Law of Demeter
- Factory Method
- Disposal Method
- Singleton (and issues)
- Copy Constructor
- value-based programming
- Whole Value
- Value Object
- Enumeration Values
- Class Factory Method
- Copied Value
- Immutable Value
- Mutable Companion
- Named Selector
- Command Processor
- Command Adapter
- Composite Command
- Composite Exception
- Active Object
- Combined Method
- Finally for Each Release
- Execute-around Method
- Combined Iterator
- Enumeration Method
- Null Object
- State-based Selection
- Objects for States (State)
- Collections for State
note, when taught at your site, this
course is customizable. Modules
can be adapted, removed, added from
other courses, or even created.
1. Design and architecture
2. Pattern structure
3. Organizing patterns
4. Delegation patterns
5. Decoupling patterns
6. Creational patterns
To book a public or onsite
course, please contact Clive Menhinick on
+44 (0)161 225 3240, or email: email@example.com.
Alternatively, use the booking form.
© TriReme International Limited 2001-2006.
All rights reserved.