有人能跟我解释一下吗
发布于 2011-05-09 15:27:07
首先,我想说,面向数据的设计和数据驱动的编程是不一样的!
在面向对象编程中,您关注的是单个对象(类--它的方法、成员等)。在面向数据的设计中,您正在考虑如何触摸和处理数据。您只有一个将输入数据处理为输出数据的框(理想的输入数据与输出相同)。
所有这些都是为了编写高性能的应用程序而创建的。您正在处理同构的线性数据--所有这些都是为了充分利用CPU缓存(指令和数据)。
只要有可能,尽量避免分层结构(而不是使用数组),尝试编写在多个数据上工作的函数,并使用热和冷结构拆分。
int Foo(int* input_data, int count)
{
// do something with your data
}发布于 2010-11-08 09:55:21
发布于 2011-09-05 17:47:47
面向数据编程是一种简单的带有数据库的编程语言,可以创建表和查询,并对其上存储的数据进行操作,面向数据语言的例子有SQL、DBase和Visual。
https://stackoverflow.com/questions/4122696
复制相似问题