• 当面临确定对象是否满足一组特定条件的任务时,规格/规范模式(Specification pattern)可能是开发人员工具箱中必不可少的工具。当与组合模式结合使用时,组合规范成为一种强大的工具,可以解决任何复杂的业务规则,同时确保可维护性,健壮性和可测试性。在本文中,我们将看到如何在.NET
  • 如题。现在感觉软件的核心是业务,业务需要什么,软件就做成什么,架构、思想、实践都是围绕着业务这个目标出发的。SOA是顶层的东西,属于架构却超越了架构,主要通过服务完成对业务的封装、编排和优化,SOA强调异构系统的整合、协作,从而产生灵活的、可复用的业务流程,给企业带来价值。DDD在中 icon
  • 业务规则和需求趋于随时间而变化:这似乎是不可避免的,因为即使业务专家也无法完全解决所有业务约束。他们的专业知识是掌握面对(新)情况时的反应。因此,随着情况的发展,您将发现新的规则。一旦您同意这一点,通用软件解决方案似乎就毫无意义了。否则, icon
  • 在涉及人员工作流程的业务流程中,任务分配逻辑可能变得非常复杂。例如,处理保险索赔或批准流程的其他变体可能需要许多或复杂的任务分配规则。决策模型和符号(DMN)决策表是管理这 icon
  • 在原始的域驱动设计书中,埃里克·埃文斯(Eric Evans)对聚合解决了哪些问题进行了评论:需要保持适用于紧密相关的对象组的不变性,而不仅仅是离散的对象。</ icon
  • 数据的正确性和执行特定领域的业务规则的能力是软件开发的几个方面之一,几乎任何项目都是如此。由于很难想象任何不需要某种验证的非hello-world应用程序,解决这个问题对整个项目的成功至关重要。当然,这样的核心概念必然会影响整体架构,所采取的任何方法都应确保只使用有效数据在整个代码中 icon
  • 需求:ISV有一个软件,用户要订购此软件if(软件是否是月租型) { 直接开通 //是月租 }else { if(是新订还是续订) {//是新订 < icon
  • 按照对DDD的理解,一般使用规约模式实现内禀的业务规则。但有些业务规则可以体现为对其他聚合的查询。而对仓储的调用一般都放在应用层,而这样会造成部分业务逻辑散落在应用层。请问大家有没有好的办法处理? 附上一个订单系统例子,当用户提交订单后,应用层的处 icon
  • 最近我在使用Ilog公司的规则引擎,使用BAL配置规则,感觉BAL虽然很直观,但是对于一个大型系统来说,要维护大量的规则还是令人头痛的事,因为它不像数据库,可以用sql语言批量更新。我很想请教各位谈谈有关ILog开发的经验。 icon
  • Shopify是一个介于开店店主、物流系统和最终网购用户之间的平台,通过整合集中采购第三方物流公司(称为“第三方物流”)提供仓储和运输服务,为商家和用户之间提供最大价值化的服务。Shopify所做的是平台最擅长的部分:作为价值链中两个模块化部分之间的接口。Shopify面对的上游是成 icon
  • JaRE是用Java编写的,可以在任何基于Java的工具或语言中使用,嵌入在其他应用程序或Web应用程序中。规则引擎允许在代码外的中心位置实现业务规则 - 无论是Web应用程序\独立应用程序\ETL工具还是任何其他基于Java的工具 - 因此,如果规则发生更改,则代码不必改变 。这在业务用户 icon
  • 对上图的说明:1. icon
  • 向您演示一个小的tinyvalidator库,tinyvalidator库是执行验证流程的小型简单解决方案,该库可以在处理程序级别用于验 icon
  • 前几天跟老板聊天,有分歧,我的观点是让程序员更关注业务,而不是在用什么框架进行选择, 快速开发能够使利润最大化,公司应设计一套自己的ide,这个ide中将我们用的框架完全封装地来,像.net一样去调用,而不是每遇到一个新的项目就去讨论学新一套新的开 icon
  • 现在公司做的一个RCP项目,做的校验全都是放在server端去完成,甚至是两个日期的对比也是放在server去完成。 校验流程:Client端-->实体对像--->Server--->校验方法--->如有错抛出异常--->Client报错。 icon
  • Bean验证是在Java生态系统中实施验证逻辑的事实上的标准,它是一个很好的工具。但是,在最近的项目中,我对Bean验证进行了更深入的思考,并确定了一些我认为是反模式的实践。 反模式免责声明就像每一次关于模式和反模式的讨论一样 icon
  •   在业务逻辑中经常有各种逻辑规则检测的情况,当不符合业务规则时,执行将终止。   通常我使用两种方法来解决这种情况。   第一种,就是返回错误码的解决方法,定义一个0到100的数字,每个数字代表一种错误信息,如 icon