The PatternDigest BookShelf

The most complete and comprehensive catalog of pattern books on the web.

BookShelf Lobby

Welcome to the PatternDigest BookShelf. Here you will find a complete collection of books on patterns and (coming soon) books by Christopher Alexander, the man who unknowingly started a software revolution. Also, the PatternDigest will soon be offering a listing of classic software engineering and computer science books that belong on every software architects bookshelf. Additionally, the PatternDigest BookShelf will soon be offering the best magazines and journals for the pattern enthusiast.

New Books

Latest releases and newly added books:

Object Oriented Reengineering Patterns

To Be Released in June or July. Based on the authors industrial experiences, this book is a guide on how to reverse engineer legacy systems to understand their problems, and then reengineer those systems to meet new demands. Patterns are used to clarify and explain the process of understanding large code bases, hence transforming them to meet new requirements. The key insight is that the right design and organization of your system is not something that can be evident from the initial requirements alone, but rather as a consequence of understanding how these requirements evolve

Design Patterns Java Workbook

This workbook complements the classic Design Patterns, giving Java developers hands-on experience in transforming pattern concepts into working designs and code. Metsker presents nearly 90 practical exercises, encompassing all 23 patterns introduced in Design Patterns, and others. Metsker organizes Java design patterns by five categories of 'intent': interfaces, responsibility, construction, operations, and extensions. Each section focuses on one category, identifying relevant challenges, and showing how specific patterns can be used to solve recurring Java development problems. A Solutions chapter provides detailed solutions to each problems.

Domain Theory

Bringing together ideas from psychology, management science, and software engineering, this book present a theoretical solution to the problems of software reuse. It compares different reuse approaches, assesses reuse claims, and describes the methods and norms for each. It also supplies a schema that defines a set of generic, reusable models of domain knowledge. Sutcliffe teaches at the University of Manchester

Small Memory Software

The proliferation of embedded systems and handheld devices, with their limited computing horsepower, is forcing programmers to revisit the importance of memory consumption as a developmental constraint. In this guide for developers, the authors recapture the memory-saving techniques that were critical in computing's first quarter century, before virtual memory became widely available and the techniques were deemed unnecessary. Weir (a UK consultant specializing in software architecture and object technology) and Noble (mathematical and computing sciences, Victoria University, Wellington, New Zealand) describe the most important programming techniques they've encountered in successful memory systems. To make the topic more approachable, they employ cartoon illustrations and a whimsical slant in many examples

Doing Hard Time

Presents an embedded systems programming methodology that Douglass has found successful in developing real-time systems. It allows application developers to apply practical techniques from mainstream object-oriented software development. Using the industry standard Unified Modeling Language, he considers such topics as schedualability, behavioral patterns, and real-time frameworks. The disk contains models from the book and two applications useful in developing real-time and embedded systems. The package could be used in a graduate or undergraduate course

Quick Pick