2010-11-08 107 views
17

任何人都可以向我解释什么是数据导向编程?

  1. 什么是面向数据的编程?
  2. 是面向数据的编程和函数式编程是一样的吗?
  3. 数据导向编程与面向对象编程有什么不同?
  4. 在什么情况下我们选择面向对象编程语言的面向数据的编程语言?
+0

这看起来像作业。如果是这样,请将作业标签添加到您发布的任何未来作业问题;如果没有,请随时删除作业标签,并解释(a)您为什么需要这些信息; (b)你已经咨询了什么来源;和(c)为什么他们让你处于困惑或知情不足的状态。 – Marcin 2011-09-05 17:50:33

+8

@Marcin这有点玩世不恭,像我这样的人出于好奇而来到这里。永远不要低估好奇心。 :) – Hawken 2013-01-05 23:47:45

回答

0

顾名思义,DOP旨在开发数据驱动的应用程序。它与OOP不同。如需进一步参考,请阅读以下链接;

http://www.rti.com/whitepapers/Data-Oriented_Architecture.pdf

http://en.wikipedia.org/wiki/List_of_programming_languages_by_category#Data-oriented_languages

+1

那么为什么DOP语言选择OOP语言来创建数据驱动应用程序?我们不能使用OOP语言创建数据驱动应用程序吗? – wizzardz 2010-11-08 10:06:42

+1

当然,我们可以使用OOP语言来开发数据驱动的应用程序。但DOP语言为数据库应用程序开发提供了特殊的功能。有关详细信息,请阅读面向数据的体系结构PDF。 – Mudassir 2010-11-08 10:17:10

17

首先我想说,那数据化的设计和数据驱动的编程是不一样的!

在面向对象的编程中,您关注的是单个对象(类 - 它的方法,成员等)。在面向数据的设计中,您正在考虑如何触摸和处理数据。 你只是有一个盒子,只是处理你的输入数据到你的输出数据(理想的输入数据与输出相同)

所有这些都是为了编写高性能应用程序而创建的。您正在研究同类线性数据 - 所有这些都充分利用CPU高速缓存(指令和数据)的优势。

每当你可以尽量避免的层次结构(使用数组来代替),尝试编写在多个数据工作的功能和使用结构分裂。

​​
-4

数据面向对象程序设计是一个简单的编程语言,数据库,您可以创建表格,查询和程序来操作就可以了存储的数据,例如数据导向的语言是SQL,dBASE和Visual FoxPro中。

+0

维基百科在其[数据导向语言列表](https://en.wikipedia.org/wiki/List_of_programming_languages_by_type#Data-oriented_languages)中包含这些语言,但我不确定列表是否准确。 – 2018-01-22 00:37:11