需求描述

做一个在线制作方便面的网站。首先进入系统你能够选择在线制作方便面,进入该模块系统会初始化系统的对象,并且会自动创建一个面饼,然后可以选择吃面的容器,容器有碗和盆,再选择水,水有纯净水、牛奶和可乐,还需要选择配料,配料有香肠,鸡蛋,牛肉,番茄。牛奶、鸡蛋、香肠、牛肉、番茄是需要开通vip,开通vip不需要任何条件,只需要点击开通vip即可。如果在首页点击的是水和配料的简介时,进入水和配料的简介界面。

系统描述

  1. 应用场景描述
    基于servlet的在线制作方便面游戏
  2. 设计模式选择
    外观模式,工厂模式,单例模式,观察者模式,策略模式
  3. 实现语言与工具
    Java、Servlet、Vue、idea

需求分析

用例图

1、点击食材信息展示能展示食材信息
2、点击制作方便面选项,能进入制作页面,选择想要的食材然后传入后端。
3、点击升级vip功能,能够选择更多的食材
4、点击今日制作方便面,能够将选择的食材放入选择的容器中并且煮
5、选择制作方便面之后,就能看到评分和评价

选用的设计模式

工厂模式,单例模式,外观模式,策略模式,观察者模式

1、系统中的水和配料和吃面的容器对象的创建使用工厂模式来创建。

2、并且水和配料对象我只创建一个,用户在使用这些对象都是唯一的,即用户对同一个对象进行操作使用的是单例模式。

3、在用户进入首页时,可以进入两个系统模块,一个是制作方便面,一个时进入水和配料的介绍,使用了外观模式,在处理首页请求时,进行初始化操作,然后根据需要重定向到特定的页面

4、对于是否升级vip使用观察者模式,处理首页的servlet将需要开通vip的对象放入观察者集合里面,并且使用策略1将观察者的open字段设置为false。在点击升级vip之后使用策略2,将观察者的open字段设置为true

5、在打分和评价中使用策略模式,如果选择的时碗就使用策略1,将重新new出来的碗加入用户选择的水和配料。如果人用户选择的时盆使用策略2,将重新new出来的盆加入用户选择的水和配料。

系统功能模块设计

类图

工厂模式类图

策略模式视图

观察者模式类图

系统演示


模块1

模块2

未开通vip,不能选择vip食材

点击开通

选择之后完成

代码和文档在百度网盘

**如果有帮助到你点个赞吧 **
百度网盘链接:https://pan.baidu.com/s/1Dy9sAYfmAjAXzkSBhzGmqA
提取码:k6n8

设计模式大作业:在线制作方便面相关推荐

  1. 软件工程大作业——在线零食销售系统

    软件工程大作业 在线零食销售系统 (Online snack sales system) 目  录 第1章 引言 1.1 研究背景 1.2 国内外研究现状 1.3 目标和意义 第2章 可行性分析 2. ...

  2. 设计模式大作业动物运动会系统【多种设计模式+文档】

    目录 一.项目简介 二.Design Pattern 汇总表 三.设计模式详述 3.1 Abstract Factory 3.1.1 AbstractFactoryTest 实现 API 3.1.2 ...

  3. 北邮JAVA高级语言程序设计(选修课)设计模式大作业

    北邮JAVA高级语言程序设计(选修课)设计模式大作业 题目描述: 设计模式一(单子.工厂.策略模式)练习 1. 假设现在要设计一个贩卖各类书籍的电子商务网站的购物车系统.对所有的教材类图书 实行每本一 ...

  4. web前端期末大作业 在线电影网页设计与制作 HTML+CSS+JavaScript仿叮当电影网页制作

    HTML实例网页代码, 本实例适合于初学HTML的同学.该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代 ...

  5. HTML期末学生大作业-在线电影网站html+css+javascript

    html网页制作期末大作业--电影网站html+css+javascript 5个页面适用学生作业 课程设计在线电影影网.期末作业电影网.毕业设计在线电影网 部分页面截图 部分源代码 <!DOC ...

  6. 2018 C语言大作业--21_Ekko制作教程

    同学们实现的效果: Ekko C语言大作业 以下是开发同学的相关文档: <Ekko>设计报告 本组设计并编写的游戏<Ekko>,是一款引用了当下红火的网络游戏<英雄联盟& ...

  7. web前端期末大作业——网页制作基础大二dw作业——动画漫展学习资料电影模板(6页)

    HTML实例网页代码, 本实例适合于初学HTML的同学.该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代 ...

  8. 1小时,不会代码的我如何完成 网易云音乐 大作业网页制作?(IVX 第2篇)

    作者简介 作者名:1_bit 简介:CSDN博客专家,2020年博客之星TOP5,蓝桥签约作者.15-16年曾在网上直播,带领一批程序小白走上程序员之路.欢迎各位小白加我咨询我相关信息,迷茫的你会找到 ...

  9. c语言大作业_2018 C语言大作业--21_Ekko制作教程

    同学们实现的效果: https://www.zhihu.com/video/1066249425780809728 以下是开发同学的相关文档: <Ekko>设计报告 本组设计并编写的游戏& ...

最新文章

  1. Win10环境Tensorflow-GPU13.1/JupyterNotebook的安装
  2. 最新!QS发布2021亚洲大学排行榜!清华第二,浙大、复旦力压北大
  3. matlab oqpsk,如何用MATLab画OQPSK星座?
  4. Oracle中去重复记录 不用distinct
  5. 死磕java_死磕JavaScript-垃圾收集机制
  6. 在JSF 2中对定制验证器进行参数化
  7. 快速入门:github发布windows版
  8. AS3还可以通过CDATA标签声明多行字符串
  9. mysql的游标处理_MySQL存储过程 游标 错误处理的示例代码
  10. 随笔(3)——智慧医养融合:从智能交互到交互智能
  11. Android屏幕旋转-横屏竖屏切换
  12. Linux系统中文件颜色分别代表什么?
  13. 计划招收300人,复旦大学计算机学院2022年夏令营来袭
  14. CPU-Z查看内存条信息
  15. 大数高精度加减、乘除、开根(C++版全套最详细、最易懂)
  16. 《嵌入式系统设计师》笔记之一——嵌入式系统基础知识
  17. Python | 人脸识别系统 — 用户操作
  18. 自学Python去接单,一周就能赚取近1200块,你看不起的行业,真的很赚钱!
  19. [MIT6.006 算法导论] 1. Peak Finding 寻峰
  20. Linux命令学习资料总结

热门文章

  1. Easyx-----c语言实现斗兽棋
  2. H5 新增那些特性:
  3. Python|读取dta文件并录入csv格式
  4. ubuntu 改屏幕分辨率命令_如何使用Ubuntu命令行更改屏幕分辨率?
  5. 小学计算机走进智慧城堡教案,新苏教版二年级下册数学《千以内数的初步认识》教案教学设计...
  6. 计算机网络知识点总结之物理层(二)
  7. RabbitMQ常见问题解决方案——消息丢失、重复消费、消费乱序、消息积压
  8. Android中的TCP协议与UDP协议
  9. Stewart 平台的数学运动解析
  10. 27.ORA - 17008