InfoQ Homepage Design Pattern Content on InfoQ
-
Factories-in-the-Small: Raytheon Experiences using the Software Factories Methodologies
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.
-
SOLID Software and Design Patterns for Mere Mortals
Phil Japikse explains SOLID software principles - Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion- and how to apply them using design patterns.
-
Infinitely Extensible
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.
-
5 Classic Patterns in Everyday Code
Michael Wood explains the importance of using patterns in software design, exemplifying with Adapter, Decorator, Command, and several Factory patterns.
-
Parallel Programming Patterns: Data Parallelism
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.
-
Savara - Formally Verifying SOA Designs Against Requirements
Steve Ross-Talbot presents Savara, comprising a set of tools enabling enterprise architects to validate various artifacts against other artifacts based on the “Testable Architecture” methodology.
-
Immutable Object vs. Unsynchronized State
Joshua Bennett discusses immutable objects, what they are good for, when they are recommended to be used and when are to be avoided.
-
Parallel Programming Patterns: Data Parallelism
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.
-
Patterns for the People
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.
-
Functional Design Patterns
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.
-
Command-Query Responsibility Segregation
Udi Dahan discusses the Command Query Responsibility Segregation (CQRS) pattern, detailing on queries and commands, what they are and how they should be used in an asynchronous programming environment
-
Understanding SOA Security Patterns
Jason Hogg discusses web services security obtained through threat modeling based on security design patterns, and explaining a number of such patterns related to processes, services and SOA security.