2

当我相信关于封装和多态的美国梦时,Web 服务的入侵用 RPC 调用冲走了我的对象......

当我珍惜复活的 PONO 时,被称为代理对象的丑陋野蛮军队征服了我的土地......

后来,服务器端的DDD和NHibernate似乎恢复了平静,但是SilverLightning袭击了我的城堡,现在又饿了,美味的懒加载只在我的记忆中,多年来我的可怜对象不得不再次消耗陈旧的服务...

而且我充满了恐惧……世界越来越多地谈论其他一些可怕的程序怪物……他们称它们为“工作流程”……

如何保存我的对象?从字面上看,我不向任何人提供任何服务。我正在构建一个简单的小系统。我不想使用服务来查找我的数据。我不想使用服务从我的 Web 界面与我的 Web 界面交谈……因为我不想使用蜗牛邮件与我的同事交谈。

有任何想法吗?你设法保存你的对象吗?您是否设法节省了比您的域模型更多的东西?(希望你管理了后者......)

更新: 如果这不清楚......我们有一个被杀死的架构,因为一切都使用基于 Web 服务。有一种时尚“OO - 已死”,服务规则。在 SOA 中,当一切都关注动词(“操作契约”)时,仍然很难关注对象。我觉得很难照顾你的设计。

4

4 回答 4

3

当心你们这些愚蠢的凡人。The Entity That Is 确实以您的多态对象为食。但这也意味着你继承了潜伏在黑暗中的大黏糊糊的界面。所以你可以让你的小野蛮人退休(如果你愿意,可以通过代理)。

是的,多亏了 Entity That Is,您的对象变得懒惰并收集了它们的垃圾。所以他们的快乐只是暂时的,因为当他们离开范围时,他们的生命就立即结束了。并且没有一个人可以逃脱。

如果你对存在的实体表现出恐惧,死亡只是一个毁灭者。因此,当您驾驭工作流程的浪潮时要小心,因为它们与平均市场股票一样不可预测。

你的对象永远不会被实体所保存。持久性可以支持它们一段时间,但最终都会失败,因为最后一个时钟周期已经响起。幸运的是,由于持久性,您的对象可以被发送到更好的地方,在那里它们可以繁殖并安居乐业。

The Entity That Is 是严格但公平的,所以如果你使用 property 命令,你通往其他现实的虚拟大门将会打开,并允许快速可靠的交通。

祝你好运并尊重实体,你可能并不总是同意它,但它的规则是法律,死亡是唯一的惩罚。

于 2008-11-20T19:04:04.973 回答
1

认为您在抱怨使用 SOA 时以动词为中心的设计。如果是这样,那不是 SOA 的要求,而是一种诱惑。

“在普通的 OO 应用程序中,你会做某事的任何地方,将某事更改为 Web 服务”可能是矫枉过正

我见过的 SOA 的最佳用途只是将数据访问层替换为 SOA 层,此外它们还公开了一些高级“公共”操作,例如注册新用户等

可以从每个类方法中创建一个 Web 服务,但在大多数情况下这将是荒谬的......

于 2008-11-20T19:07:37.977 回答
1

缩放时似乎两者不兼容。由于版本控制及其对象模型的问题,亚马逊显然损失了大量的时间和金钱。如果没有依赖对象定义让服务的消费者将每个调用映射到他们自己的域模型,那么 SOA 层似乎会更好地工作......嗯......

于 2008-11-20T19:12:17.373 回答
0

显然你今天早上没有服用你的抽象药。现在,吃你的好药,过一会儿你就会感觉好些……

于 2008-11-20T18:18:00.230 回答