设计访谈 - 汽车预订系统

Til*_*aat 7 oop

汽车预订系统是软件开发访谈中非常受欢迎的问题.当我被问到这个时,我设计了以下ER结构/ OOP结构:

汽车类/表具有汽车ID#,类型(紧凑型,标准型等),品牌,型号客户具有客户ID#等.预订是存储汽车ID#,客户ID#和汽车预订日期的关联表.为了简单起见,我们可以假设汽车只能在几天内保留.

这是我陷入困境的棘手部分 - 当客户1在7月27日预订一辆装有Id Car 3的紧凑型轿车时会发生什么.如果3号车在3月24日合计,会发生什么情况.其他紧凑型轿车可供使用,但是在7月24日至27日之间都得到了.因此,当客户1在7月27日到达时,他最终没有车.

我认为这个缺陷与预订表中的Car和Customer相关联.有没有更好的方法来建立这种关系以及常规用例,例如找到特定日期的可用汽车,保留该日期等.

Avi*_*hen 2

您可以将另一个boolean字段添加到Carcalled Working。如果Car 3合计则

  • 设置。Workingfalse
  • 在 中搜索它Reservation
  • 如果存在,则在 中搜索另一辆该类型的汽车Car
  • 如果找到,则将这辆车替换为 中的另一辆车Reservation
  • 否则打电话给客户。