Dean Wampler discusses the merits of several controversial issues: Goto, Design before Code, Design Patterns, Corba vs. REST, Object Middleware and ORMs, and Identiﬁers with Spaces.
John Slaby and Jezz Santos explain how Raytheon has created Factories-in-the-Small useful to rapidly build new tooling such as the Pattern Automation Toolkit developed in cooperation with Microsoft.
Phil Japikse explains SOLID software principles - Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion- and how to apply them using design patterns.
Alex Papadimoulis discusses avoiding over-engineering a program, presenting extensibility types used, extensibility design patterns, when to use them, and what happens when they are incorrectly used.
Michael Wood explains the importance of using patterns in software design, exemplifying with Adapter, Decorator, Command, and several Factory patterns.
Ralph Johnson presents several data parallelism patterns, including related Java, C# and C++ libraries from Intel and Microsoft, comparing it with other forms of parallelism such as actor programming.
Steve Ross-Talbot presents Savara, an open source project comprising from a set of tools enabling enterprise architects to validate various artifacts against other artifacts built in different phases of the development process based on the “Testable Architecture” methodology.
Joshua Bennett discusses immutable objects, what they are good for, when they are recommended to be used and when are to be avoided.
Ralph Johnson presents several data parallelism patterns, including related libraries from Intel and Microsoft, comparing it with other forms of parallel programming such as actor programming.
Kevlin Henney proposes a new look at design patterns from the perspective of the habitability of code, communication, exploration, empiricism, reasoning, incremental development, and design sharing.
Aino Vonge Corry reviews a number of well known design patterns showing that their implementation is simpler in functional languages because such languages have pattern-based constructs.
Udi Dahan discusses the Command Query Responsibility Segregation (CQRS) pattern and its relationship to Domain Driven Design (DDD), detailing on queries and commands, what they are and how they should be used in an asynchronous programming environment.