当前位置: 首页 > news >正文

实验4 设计模式实验3

实验内容:
1. 某软件公司为新开发的智能手机控制与管理软件提供了一键备份功能,通
过该功能可以将原本存储在手机中的通信录、短信、照片、歌曲等资料一次性全
部拷贝到移动存储介质(例如MMC 卡或SD 卡)中。在实现过程中需要与多个
已有的类进行交互,例如通讯录管理类、短信管理类等。
为了降低系统的耦合度,试使用外观模式来设计并编程模拟实现该一键备份
功能。

答(类图):

 其中,OneKeyBackup 充当外观角色,ContactManager、MessageManager 和
FileManager 充当子系统角色。

2. 在某应用软件中需要记录业务方法的调用日志,在不修改现有业务类的基
础上为每一个类提供一个日志记录代理类,在代理类中输出日志,例如在业务方
法method()调用之前输出“方法method()被调用,调用时间为2022-12-12
10:10:10”,调用之后如果没有抛异常则输出“方法method()调用成功”,否则输
出“方法method()调用失败”。
在代理类中调用真实业务类的业务方法,使用代理模式设计该日志记录模块
的结构,绘制类图并编程模拟实现。

答(类图):

http://www.lryc.cn/news/30970.html

相关文章:

  • CNN基础
  • 【UEFI基础】UEFI事件介绍
  • Markdown 语法速查表
  • 【C++】-- 类型转换
  • 汇编基础语法和指令总结+案例(用32位汇编实现插入排序)
  • C++多线程--线程安全的单例模式
  • (Android-RTC-9)PeerConnectionFactory
  • Vector - CAPL - 定时器函数和使用
  • 【嵌入式C】常见问题
  • [神经网络]Transfomer架构
  • C++之多态 虚函数表
  • AI_Papers周刊:第四期
  • A Simple Framework for Contrastive Learning of Visual Representations阅读笔记
  • mac安装开发工具:clipy、iterm2、go、brew、mysql、redis、wget等
  • DJ1-1 计算机网络和因特网
  • [1.3.3]计算机系统概述——系统调用
  • 【Java开发】JUC进阶 03:读写锁、阻塞队列、同步队列
  • Fragment中获取Activity的一点点建议
  • Java Math类
  • Javascript -- 加载时间线 正则表达式
  • gdb/git的基本使用
  • 信息安全与数学基础-笔记-④二次同余方程
  • Luogu P4447 [AHOI2018初中组]分组
  • 手把手创建flask项目
  • SpringCloud-4_Eureka服务注册与发现
  • 【react全家桶】生命周期
  • 虚拟机安装Windows 10
  • 【CMU15-445数据库】bustub Project #2:B+ Tree(下)
  • leetcode 困难 —— 外星文字典(拓扑排序)
  • ubuntu server 18.04使用tensorflow进行ddqn训练全过程