一、架构师的最大的价值
1.客户价值转化为设计(设计承载客户价值)
2.把设计快速落地实现
二、设计原则
1.设计既要解耦合,强耦合设计往往存在灵活性和扩展性的问题
2.设计也不能做穿了,一个功能尽量包含在一个模块里,不能扩散到其他模块
三、关键知识点
1.领域驱动设计之聚合与聚合根实例(https://www.cnblogs.com/malaoko/p/4993457.html)
外部对象需要访问聚合内的实体时,只能通过聚合根进行访问,而不能直接访问 。从技术角度考虑,聚合确定了实体生命周期的关注范围,即当某个实体被创建时,同时需要创建以其为根的整个聚合,而当持久化某个实体时,同样也需要持久化整个聚合。比如,在从外部持久化机制重建客户对象的同时,也需要将其所拥有的信用卡赋给客户实体(具体如何操作,根据需求而定)。不要去关注聚合内实体的生命周期问题,如果你真的这么做了,那么你就需要考虑下你的设计是否合理。 领域模型需要根据领域概念分成多个聚合,每个聚合都有一个实体作为聚合根,通俗地说,领域对象从无到有的创建,以及 CRUD操作都应该作用在聚合根上 ,而不是单独的某个实体。当你的代码需要直接对聚合内部的实体进行CRUD操作时,就说明你的模型设计已经存在问题了。 为聚合的另一层意义就是界定持久化的范围。换句话说,聚合中的所有对象都是同时有,同时无。
2.领域驱动模型 https://www.jdon.com/ddd.html
DDD最大的好处是:接触到需求第一步就是考虑领域模型,而不是将其切割成数据和行为,然后数据用数据库实现,行为使用服务实现,最后造成需求的首肢分离。