反OOD的一种常见模式

相信很多人都见识过面向数据库表的设计,就是经过一系列所谓的OOA与OOD后最后产出个数据ER。这是偷换了OOD的概念。开发人员在拿到ER图后,就开始设计数据库,接着根据数据表进行业务功能开发。

如果是小的系统,通过个人英雄主义,也许可以把项目做出来;如果是复杂的业务系统,就晕了,乱如麻,bug百出,牵一发而动全身。

记得以前看过这样的说法:如果让我看你的代码,却不让我看你的数据表设计,那么我怎么知道你设计(实现)的是什么;如果让我看了你的数据表设计,那我干吗还要看你的代码。其实说的就是那种面向数据表设计的架构。

号外:

数据ER应该怎么设计?这可是个大学问。 个人的经验,就两种:一种是与领域模型对应;另一种是秉着将活动过程中关键数据与活动结果持久化的原则进行设计,也就是不与领域对应的方式设计。第一种的设计方式很被动,也不科学,现实情况是:最终实施到生产环境中的ER有90%以上是没能与领域模型对应的。我的博文《架构分析与设计到实现的过程展示 》中的数据ER设计,就是根据第二种方式设计的。


你可能感兴趣的:(架构)