数据模型是全局的、战略的,而函数实现只是局部的、战术的。

数据模型是全局的、战略的,而函数实现只是局部的、战术的。

版权所有 © 2018 林鹏程, 保留所有权利。

在数据流编程思想里,数据模型设计最重要,有些人受OO,NoSQL等影响比较深,常常设计出层次很深的数据模型,然后操作很复杂麻烦。一般来讲,在扁平的关系数据库式二维表与金字塔式的NoSQL数据模型之间做平衡,以设计出简单、方便、灵活的数据模型。

如果要从现实世界中找出一个成熟的数据建模方法学,我认为Postgresql的数据库建模方法是很好的参考方法,Postgresql是对象关系式数据库,支持众多数据类型,包括JSON,数据模型在扁平和金字塔模型做了很好的平衡。

就象企业组织结构设计中,有扁平组织,有金字塔组织,扁平组织和金字塔组织,中间又可以互相嵌入的。有事业部,有独立全资子公司,有参股联营。这些都可以是数据的表现形式。合适的组织结构和制度设计, 是成熟企业的标志,是百年老店的根基。

数据模型按需设计,方便实现为上。函数不重要的,只要初始数据模型和最终数据模型设计良好,函数实现都是很简单、可验证、可替换、易扩展、易组合的,随随便便即可搞定,没什么技术含量的。

所谓编程,就是设计一个操纵简单流畅的数据模型的过程。

使用了纯函数管道数据流编程思想,就会发现编程是一件简单、流畅、享受的事情,FP和OO都是在花样作死。

目前,纯函数管道数据流支持度最好的语言是Clojure。

你可能感兴趣的:(数据模型是全局的、战略的,而函数实现只是局部的、战术的。)