无眠的个人专栏

创建型设计模式:抽象工厂(Abstract Factory)

我们在使用简单工厂或工厂方法,createProduct()是直接返回了已完成的产品。而有些产品由好几个零部件组装而成,各个零部件单独生产,并相关联。这次我们要介绍的是生产自行车的工厂。自行车工厂自行车工厂的任务是:生产两个品牌系列:凤牌和凰牌的自行车生产自行车的各个系列相关零部件:车架(BikeRack),车轮(Wheel)和脚踏板(Pedal),最后组装自行车。品牌差异因为凤牌和凰牌自行车的定
阅读更多

创建型设计模式:工厂方法(factory method)

情况:各子公司合作的物流公司不同接着简单工厂与物流公司合作的例子。公司在多个地区和物流公司都有合作,但各个地区合作的物流公司有所不同,并且有些公司还是当地的物流。简单工厂解决方案结合简单工厂模式,我们可以创建各个地区的简单工厂。这样做先得定义简单工厂的接口:public interface SimpleExpressFactory { Express createExpress(String
阅读更多

DDD实践思考:文章投票点赞功能的领域建模

功能说明文章投票功能简单描述:用户阅读文章后,可以给文章投票,投票包括两个方向:支持或不支持。设计思考基于领域驱动设计常见的做法,首先可以确定的是文章Article是一个聚合根。Article包含title,content,description等等。有疑惑的地方是:投票Vote是否要单独出来做聚合根,还是把它放在Article聚合根下?需要考虑一下几点:Article和Vote是一对多的关系,但
阅读更多

创建型设计模式:简单工厂(simple factory)

假设你在开发一个商品发货系统,公司没有物流运输能力的,需要对接快递公司。刚开始,货物是交给一个快递公司,你的发货流程简单描述为下单,收货,货物运送。代码类似于:public void send(Goods goods) { Expess express = new Express(); express.placeOrder(goods); express.
阅读更多
X

欢迎加群学习交流

联系我们