东营网站建设的流程_华企网_网站开发技术课程设计报告_看视频小程序公众号
  1. 车次名称,如 G71;

  2. 座位数,实际座位数会分类型,比如商务座 20 个,一等座 200 个;二等座 500 个;我们这里为了简化问题,可以暂时忽略类型,我认为这个类型不影响核心的模型的设计决策。需要格外注意的是:这里的座位数不要理解为真实的物理座位数,很有可能比真实的座位数要少。因为我们不可能把一个车次的所有座位都在网上通过 12306 来出售,而是只出售一部分,具体出售多少,要由工作人员人工指定。

  3. 经过的站点信息(包括站点的 ID、站点名称等),注意:车次还会记录这些站点之间的顺序关系;

  4. 出发时间;看过 GRASP 九大模式中的信息专家模式的同学应该知道,将职责分配给拥有执行该职责所需信息的类。

我们这个场景,车次具有一次出票的所有信息,所以我们应该把出票的职责交给车次。另外学过 DDD 的同学应该知道,聚合设计有一个原则,就是:聚合内强一致性,聚合之间最终一致性。经过上面的分析,我们知道要产生一张票,其实要影响很多和这个票对应的线段相交的其他票的可用数量。因为所有的站点信息都在车次聚合内部,所以车次聚合内部自然可以维护所有的原子区间,以及每个原子区间的可用票数(相当于是库存数)。当一个原子区间的可用票数为 0 的时候,意味着火车针对这个区间的票已经卖完了。所以,我们完全可以让车次这个聚合根来保证出票时对所有原子区间的可用票数的更新的强一致性。对于车次聚合根来说,这很简单,因为只是几次简单的内存操作而已,耗时可以忽略。一列火车假如有 ABCD 四个站点,那原子区间就是 3 个。对于 G71,则是 16 个。

">

上海seo排名优化推广

上海设计公司工资怎么样、品牌网站设计哪家公司好、永久使用、不限域名、运营主要做什么工作内容

淘宝详情页制作方法?

东营网站建设的流程_华企网_网站开发技术课程设计报告_看视频小程序公众号

 2、新闻详情页 

网站维护提起源码单片机编程vpsoffice是什么广州感染最新情况电子商务公司起名大全集济南网络营销推广商家ppt制作软件免费版男科医院官方网站在线代理网页哪家好广告网页链接怎么制作互联网搜索引擎有哪些小程序商城注册万户网络设计制作深圳市住房和建设局局长什么级别软件工程师在哪里学上海市委常委班子成员名单成都跨境电商公司排名王爷电视剧邯郸招生网站移动应用开发基础web开发三大主流框架东莞国贸中心北京互联网小公司名单建议一个人观看长视频b站晚上睡不着求个免费的网站实体店铺托管正邦设计公司作品南京小程序开发定制公司天津app开发制作平面设计师接单平台有哪些项目网页

猜你喜欢

  • 友情链接:
  • 龙头新闻app官方下载 在线生成签名 html代码标签 app开发公司排行榜前十名 企业办公系统常用的有哪些 南宁网约车司机真实收入多少