2024年05月05日来源:信管网 作者:cnitpm
软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4
往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html
软件设计师案例分析每日一练试题(2024/5/4)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/5/4
点击查看:更多软件设计师习题与指导
软件设计师案例分析每日一练试题内容(2024/5/4)
【说明】信管网考友试题答案分享:
信管网cnitpm610258705267:
c1:snsgroup c2:snsuser c3:snsadmin
观察者模式
观察者模式:对象中存在一对多的关系,一个对象更新依赖他的对象都会随之更新
根据需求可以发现中间存在一个级联关系,由于需求当中说到a加入b之后,自动成为b的成员,单并没有说明b也可以同时成为
a的成员,所以此时可以看做b的子组织包括了a成员。同时一个群可以添加多个群作为子群,所以这个childs是一个链表结构
设计如下
需要在snsgroup增加addgroup()方法与链表childgroupnodes 属性
snsgroup可以通过addgroup其他组并将它们当做其组的子成员变量
在通过notify时不仅需要查自身的组成员,还需递归查询子群的成员以及孙成员以此向下查
并发起通知
信管网山里人就是仙人:
问题1:
c1 snsgroup; c2 snsuser; c3 snsadmin;
问题2:
图3-1中采用了观察者模式。
观察者模式一般适用于当一个对象的状态发生变化时,有多个对象需要根据变化做出反应的情况。
问题3:
在snsobserver类中增加一个list<snsobserver>集合,用来存放添加的群体成员,并增加集合的set、get方法
信管网cnitpm630501712623:
【问题1】
c1: snsgroup,c2: snsuser,c3: snsadmin
【问题2】
观察者模式,这里使用该模式的意图是为了在群组的主页上发布或者更新信息,群组的成员能够自动接收到发布或更新后的信息,该模式适用于当一个实体的状态发生改变时,所有依赖该实体的其他实体能够自动收到通知。
【问题3】
snssubject类中增加一个addsnsgroup()方法,用来接收其他想加入的群体。
信管网克己复礼aaaa:
问题1 c1 snsgroup c2 snsuser c3 snsadmin
问题2 组合模式 接口和实现分离
问题3
信管网cnitpm600760858161:
c1 snsgroup c2 snsobserver c3 snsadmin
观察者模式
a群体观察者继承snsobserver
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐