Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
20 lines (10 sloc) 1.52 KB

The History of ADR

Origin

March 2014

While writing Chapter 10 of MLAPHP, on extracting presentation logic to View files in an MVC structure, I realized there was no logical place to put the refactored HTTP response header work. HTTP headers and status are not business logic, but at the same time, no template system had any support for them. This led me to realize in a server-side application, in a request/response over-the-network environment, the presentation delivered from a server-side application is the entire HTTP response and not just the body of the response message.

Initial Draft

May 2014

As a result, I researched (and asking questions of practitioners) which led to the initial draft of the ADR pattern. It was initially titled Action Domain Response, but I soon retitled it Action Domain Responder to make it clear the component is not itself the HTTP response, but instead something which builds the HTTP response.

Revision One

January 2018

In this revision, ADR is now described as an alternative to, and not merely a refinement of Model View Controller. This is based on the expanded presentation regarding the background of Model View Controller and "Model 2." There are no significant changes to the pattern itself, though the implementation advice and considerations have been updated based on four years of experience and experimentation. The offering as a whole has been broken up into several pages instead of a single page.