Week 23

Design patterns capture the static and dynamic structures of solutions that occur repeatedly when producing applications in a particular context. --from the Preface of Pattern Languages of Program Design, edited by James O. Coplein and Douglas C. Schmidt.

Week 26

Alexander introduced the notion of design patterns in tradional architecture. Each of his design patterns is related to other patterns of the same or a higher or lower granularity. These relationships influence the construction process, because one should always look at related patterns when one builds something and one should always apply higher-level patterns first. --from the Relationships Between Design Patterns, by Walter Zimmer

Week 27

Black-box frameworks are usually easier to use than white-box frameworks, but are always harder to design. Most black-box frameworks started off as white-box frameworks and then gradually evolved to become more compositional.
--from A Framework for Network Protocol Software, by Hermann Huni, Ralph Johnson, Robert Engel.

Week 29

Object-oriented systems often exhibit idiomatic and recurring patterns and structures of communicating objects that solve particular design problems and make design more flexible, elegant, and ultimately reusable. Design Patterns have been proposed as one way to represent, record and reuse these recurring design structures and associated design experience.
--from Patterns in Practice, by Richard Helm.

Week 33

Third is the fascination of fashioning complex puzzle-like objects of interlocking moving parts and watching them work in subtle cycles, playing out the consequences of priciples built in from the beginning. The programmed computer has all the fascination of the pinball machine or the jukebox mechanism, carried to the ultimate.
--from The Mythical Man-Month, by Frederick P. Brooks, Jr.

Week 34

We must begin by understanding that every place is given its character by certain patterns of events that keep on happening there...And indeed, the world does have a structure, just because these patterns of events which repeat themselves are always anchored in the space.
--from A Timeless Way of Building, by Christopher Alexander

Week 37

Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice.
--from A Timeless Way of Building, by Christopher Alexander

Week 39

Patterns help you build on the collective experience of skilled software engineers. They capture existing, well-proven experience in software development and help to promote good design practice. Every pattern deals with a specific, recurring problem in the design or implementation of a software system. Patterns can be used to construct software architectures with specific properties.
--from Pattern-Oriented Software Architecture, by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad and Michael Stal

Week 41

What is so exciting about patterns? It is probably the fact that they constitute a 'grass roots' effort to build on the collective experience of skilled designers and software engineers. Such experts already have solutions to many recurring design problems. Patterns capture these proven solutions in an easily available and hopefully well-written form.
--from Pattern-Oriented Software Architecture, by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad and Michael Stal

Week 46

The Layers pattern describes the most widespread principle of architectural subdivision. Many of the block diagrams we see in system architecture documents seem to imply a layered architecture. However, the real architectures all too often turn out to be either a mix of different paradigms--which by itself cannot be criticized--or concealed collections of cooperating components without clear architectural boundaries between them. To help with the situation, we try to be more rigorous in our description and list the characteristics of truly layered systems.
-from Pattern-Oriented Software Architecture, by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad and Michael Stal

Week 54

A pattern-based derivation of an architecture is like the presentation of a mathematical theorem. Beginning with a problem to solve, you use well-known, independent steps to incrementally refine the problem to a solution. The result is that you not only understand the final system, you understand the reasoning that led to it. This should make it easier for programmers to use and extend systems documented with pattern-based derivations.
--from Patterns Generate Architectures, by Kent Beck from ECOOP'94

Week 63

Design patterns capture the static and dynamic structures of solutions that occur repeatedly when producing applications in a particular context.
--from Pattern Languages of Program Design, edited by James O. Coplein and Douglas C. Schmidt

Week 64

As people exchange ideas about the environment, and exchange patterns, the overall inventory of patterns on the pattern pool keeps changing.
Of course, this evolution will never end. Design patterns capture the static and dynamic structures of solutions that occur repeatedly when producing applications in a particular context.

--from A Timeless Way of Building, by Christopher Alexander

Week 66

Beginnings are difficult. I Ching authors tell the story of a blade of grass pushing up through the soil. When its life's forces are the smallest, the grass must do its most difficult job: to push the pebbles (not it) aside to work _its_ way up through the soil.
--Dan Palanza

Week 69

A growing number of us in the object-oriented development community feel we have misplaced our collective attention for some time. We no longer need to focus on tools, techniques, notation or even code. We already have in our hands the machinery to build great programs. When we fail, we fail because we lack experience.

Martin Fowler [in Analysis Patterns] has found a way to give us what we need: experience in book form.
--from Ward Cunningham's Forward to Analysis Patterns

Week 72

Threads are to the 90s what pointers were to the 80s.
--Brian Foote, at UP '97

Week 80

Individual patterns become valuable when they are woven together to form a sort of flexible recipe for development. Expertise in development often hinges on knowing what problems should be solved first and what problems can be safely ignored. When each pattern names patterns that precede and complete it, the result is a rich language for capturing software engineering expertise.

-Kent Beck, from Smalltalk Best Practice Patterns

FacebookFacebook  TwitterTwitter  linked inLinkedIn