DenkzeitWiki

Suchen:

Aktuelle Änderungen Printable View Änderungen Bearbeiten

ProgrammierSprachen > PythonBytecodeHacks > SoftwareArchitecture > PragmaticProgrammers > IntermediateLanguage > VersionControlSystem > VersionControl > JohannesSiedersleben > PythonSuccessStories > TailCallOptimization > Recursion > BehaviorDrivenDesign > SmartDataAndDumbCode > ProgrammingLanguages > ProgrammierSprachen > JavaEnterpriseEdition > DataDrivenProgrammingClear Trail
Main /

Data Driven Programming

CodeIsData
DataIsCode

ObjectOrientedProgramming

CodeGeneration

Data Driven Programs are programs which process data files whose contents cause the program to do something different. The extreme case is an interpreter and the interpretable program files.[1]



Want to know the secret to building maintainable systems? Quit writing so much source code.[2]


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.

Where the primary concern in OO is encapsulation, the primary concern in data-driven programming is writing as little fixed code as possible.

An important rule when doing any kind of code generation or data-driven programming is this: always push problems upstream. Don't hack the generated code or any intermediate representations by hand — instead, think of a way to improve or replace your translation tool.


At the upper end of its complexity scale, data-driven programming merges into writing interpreters for p-code or simple minilanguages of the kind we surveyed in Chapter 8. At other edges, it merges into code generation and state-machine programming.


Edit - BackLinks - Tags - Page Hist - Print - Changes - Home - Orphans - Help

Zuletzt geändert am 01.07.2008 18:42 Uhr und seit 7. April 2005 1964 aufgerufen.