Content deleted Content added
m Fixed typos (via WP:JWB) |
Jerryobject (talk | contribs) 'Image:' > 'File:' update-standardize. WP:LINKs: update-standardize, needless WP:PIPEs > WP:NOPIPEs, section MOS:HEADings deWP:LINK. Template:Furthers add. Small WP:COPYEDITs WP:EoS: WP:TERSE, clarify, 1st MOS:PERSON we fix-cut. Template:Design Patterns Patterns update > Template:Design patterns. WP:CATEGORYs: adds, move. MOS:COMMENT add. |
||
Line 1:
{{
[[
In computer programming, the '''specification pattern''' is a particular [[software design pattern]], whereby [[business rules]] can be recombined by chaining the business rules together using [[boolean algebra|boolean logic]]. The pattern is frequently used in the context of [[___domain-driven design]].
Line 11:
== Code examples ==
===
{{Further|C Sharp (programming language)}}
<syntaxhighlight lang="csharp">
public interface ISpecification
Line 138:
</syntaxhighlight>
===
{{Further|C Sharp (programming language)}}
<syntaxhighlight lang="csharp">
public interface ISpecification<T>
Line 230:
</syntaxhighlight>
===
{{Further|Python (programming language)}}
<syntaxhighlight lang="python">
from abc import ABC, abstractmethod
Line 278 ⟶ 279:
</syntaxhighlight>
===
{{Further|C++}}
<syntaxhighlight lang="cpp">
template <class T>
Line 421 ⟶ 423:
</syntaxhighlight>
===
{{Further|TypeScript}}
<syntaxhighlight lang="typescript">
export interface ISpecification {
Line 510 ⟶ 512:
==Example of use==
In the
# they are overdue,
Line 554 ⟶ 556:
* [https://web.archive.org/web/20110724151447/http://www.dpdk.nl/opensource/specification-pattern-for-selection-on-lists specification pattern in flash actionscript 3] by Rolf Vreijdenberger
{{Design
[[Category:Architectural pattern (computer science)]]
[[Category:Articles with example C Sharp code]]▼
[[Category:Software design patterns]]
[[Category:Programming language comparisons]]
<!-- Hidden categories below -->
▲[[Category:Articles with example C Sharp code]]
[[Category:Articles with example C++ code]]
[[Category:Articles with example JavaScript code]]
[[Category:Articles with example Python (programming language) code]]
|