Data-Driven Programming Paradigm
A Data-Driven Programming Paradigm is a Programming Paradigm were program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken.
- Context:
- It can allow for Program Changes by editing Data Structures (not the program code).
- …
- Counter-Example(s):
- an Object-Oriented Programming Paradigm (which focuses on encapulation).
- a Modular Programming Paradigm.
- a Functional Programming Paradigm.
- See: AWK, Input Stream, Regular Expression, Event-Driven Programming, Main Loop, Abstract Data Type, Data, Data-Driven Algorithm, Data-Driven Task, Data-Driven System, Learning-based Programming, Rules-Driven Programming Paradigm, Declarative Programming Paradigm.
References
2013
- (Wikipedia, 2013) ⇒ http://en.wikipedia.org/wiki/Data-driven_programming Retrieved:2013-12-1.
- In computer programming, data-driven programming is a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken.[1] Standard examples of data-driven languages are the text-processing languages sed and AWK, where the data is a sequence of lines in a input stream – these are thus also known as line-oriented languages – and pattern matching is primarily done via regular expressions or line numbers. Data-driven programming is similar to event-driven programming, in that both are structured as pattern matching and resulting processing, and are usually implemented by a main loop, though they are typically applied to different domains.
Adapting abstract data type design methods to object-oriented programming results in a data-driven design.[2] This type of design is sometimes used in object-oriented programming to define classes during the conception of a piece of software.
- In computer programming, data-driven programming is a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken.[1] Standard examples of data-driven languages are the text-processing languages sed and AWK, where the data is a sequence of lines in a input stream – these are thus also known as line-oriented languages – and pattern matching is primarily done via regular expressions or line numbers. Data-driven programming is similar to event-driven programming, in that both are structured as pattern matching and resulting processing, and are usually implemented by a main loop, though they are typically applied to different domains.
- ↑ Stutz, Michael (September 19, 2006). "Get started with GAWK: AWK language fundamentals". developerWorks. IBM. http://www.ibm.com/developerworks/aix/tutorials/au-gawk/section2.html. Retrieved 2010-10-23. "[AWK is] often called a data-driven language -- the program statements describe the input data to match and process rather than a sequence of program steps"
- ↑ Wirfs-Brock, R.; Wilkerson, B. (1989). "Object-oriented design: a responsibility-driven approach". Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications (New York: ACM): 71–75. doi:10.1145/74877.74885.
2003
- (Raymond, 2003) ⇒ Eric Steven Raymond. (2003). “The Art of Unix Programming.”. Chapter 9 http://www.faqs.org/docs/artu/ch09s01.html ISBN:0131429019
- QUOTE: … When doing data-driven programming, one clearly distinguishes code from the data structures on which it acts, and designs both so that one can make changes to the logic of the program by editing not the code but the data structure.
Data-driven programming is sometimes confused with object orientation, another style in which data organization is supposed to be central. There are at least two differences. One is that in data-driven programming, the data is not merely the state of some object, but actually defines the control flow of the program. Where the primary concern in OO is encapsulation, the primary concern in data-driven programming is writing as little fixed code as possible. Unix has a stronger tradition of data-driven programming than of OO.
- QUOTE: … When doing data-driven programming, one clearly distinguishes code from the data structures on which it acts, and designs both so that one can make changes to the logic of the program by editing not the code but the data structure.