InfoQ Homepage Patterns Content on InfoQ
-
Actor Interaction Patterns
Dale Schumacher presents several patterns of actor interaction that can be used in collaborative programs written in any language.
-
The Mapping Dilemma
David Nolen critiques the tools, languages and methodologies used today from the perspective of solving the “mapping dilemma”, introducing match, a pattern matching library for Clojure.
-
Heresies and Dogmas in Software Development
Dean Wampler discusses the merits of several controversial issues: Goto, Design before Code, Design Patterns, Corba vs. REST, Object Middleware and ORMs, and Identifiers with Spaces.
-
Mobile Data Access Patterns - Cross Platform Action with Mono
Travis Smith presents the challenges – inconsistent feature support - and advantages – code reuse - of developing cross platform mobile applications with Mono, focusing on data access patterns.
-
Event Aggregator: Solving the Problem of Event Coupling
Donald Belcham presents the Event Aggregator pattern and the event problems it solves: tight coupling, refactoring difficulty, object chaining, memory leak, showing how to build one.
-
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.
-
Presentation Patterns: MVP – MVC – MVVM
Erik Lebel explains 3 presentation patterns used in Windows applications –MVP, MVC, MVVM-, demoing how the model, view, and control layers interact with each other.
-
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.