Was ist der Unterschied zwischen Daten und code?

Nehmen ein Beispiel, betrachten Sie eine Reihe von Ermäßigungen auf einem Supermarkt-shopper.

Könnten wir die Regeln definieren, wie Daten in einem standard-Mode (Listen der qualifizierende Elemente, die geltenden Termine, Gutschein-codes) und generischen code schreiben, um mit diesen umgehen. Oder wir könnten schreiben, die jeweils als ein Stück code, das die Kontrollen für die entsprechenden Dinge, die dem Kunden das shopping-Liste und gibt alle anwendbaren Rabatte.

Man vernünftigerweise speichern Sie die Regeln als Objekte, serialisierte in Blobs oder gespeichert in code-Dateien, so dass jede Regel wählen könnte, seine eigene Trennung zwischen Daten und code, zu ermöglichen, für die Zukunft Regeln, dass würde nicht passen die Art der generische Prozessor oben betrachtet.

Oft ist es einfach zu kritisieren, code, mischt Daten, die über wenn-Anweisungen, die prüfen, für 6 verschiedene Dinge, die sollten in einer Datei oder einer Datenbank, aber es ist eine Regel, die hilft, in den Rand-Fällen?

Oder ist das der Punkt, an Object-Oriented design, aufhören uns Gedanken über die Grenze zwischen Daten und code?

Zu klären, die zugrunde liegende Frage ist: Wie würden Sie das code-Beispiel oben? Gibt es eine Faustregel, dass Sie entscheiden, was Daten und was code?

(Anmerkung: ich weiß, der code kann kompiliert werden, aber in einer Welt der dynamischen Sprachen und JIT-Kompilierung, auch das ist ein unscharfes Konzept.)

  • Könnten Sie bitte klären Sie die Frage. Ist die wichtigste Frage, das Thema oder was sind Sie eigentlich gefragt?
  • Die Frage ist wohl wirklich wie entscheiden Sie, was im code festgelegt und was zum codieren der Daten?
  • ich sehe', code und Daten " in Was Ist ein Fenster? auf der MSDN-Website ,ich 'Window Handles" Teil, die MSDN sagen :"Windows-Objekte sind — Sie haben sowohl code und Daten — Sie sind aber keine C++ - Klassen. Stattdessen ein Programm Referenzen ein Fenster mit einem Wert aufgerufen Griff" und ich Frage mich, was ist der Unterschied zwischen Ihnen!
InformationsquelleAutor Phil H | 2009-03-13
Schreibe einen Kommentar