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

用nodejs做的网站百度关键词怎么设置

用nodejs做的网站,百度关键词怎么设置,营销互联网推广,网站显示wordpress简介 本篇文章将介绍如何设计一个图形编辑器系统,系统包括图形对象的创建、组合、操作及撤销等功能。我们将通过这一项目,应用命令模式、组合模式和备忘录模式来解决具体的设计问题。 问题描述 设计一个图形编辑器系统,用户可以创建并操作图形对象,将多个图形对象组合成…简介 本篇文章将介绍如何设计一个图形编辑器系统,系统包括图形对象的创建、组合、操作及撤销等功能。我们将通过这一项目,应用命令模式、组合模式和备忘录模式来解决具体的设计问题。 问题描述 设计一个图形编辑器系统,用户可以创建并操作图形对象,将多个图形对象组合成更复杂的图形,支持操作的撤销与重做。 设计分析 业务流程说明 整个图形编辑器系统的业务流程如下: 用户创建图形对象。用户组合多个图形对象。用户对图形对象进行操作(如移动、删除)。用户撤销或重做操作。流程图 #mermaid-svg-cpS9CPwVHqeLPad2 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .error-icon{fill:#552222;}#mermaid-svg-cpS9CPwVHqeLPad2 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-cpS9CPwVHqeLPad2 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-cpS9CPwVHqeLPad2 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-cpS9CPwVHqeLPad2 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-cpS9CPwVHqeLPad2 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-cpS9CPwVHqeLPad2 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-cpS9CPwVHqeLPad2 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-cpS9CPwVHqeLPad2 .marker.cross{stroke:#333333;}#mermaid-svg-cpS9CPwVHqeLPad2 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-cpS9CPwVHqeLPad2 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .cluster-label text{fill:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .cluster-label span{color:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .label text,#mermaid-svg-cpS9CPwVHqeLPad2 span{fill:#333;color:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .node rect,#mermaid-svg-cpS9CPwVHqeLPad2 .node circle,#mermaid-svg-cpS9CPwVHqeLPad2 .node ellipse,#mermaid-svg-cpS9CPwVHqeLPad2 .node polygon,#mermaid-svg-cpS9CPwVHqeLPad2 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-cpS9CPwVHqeLPad2 .node .label{text-align:center;}#mermaid-svg-cpS9CPwVHqeLPad2 .node.clickable{cursor:pointer;}#mermaid-svg-cpS9CPwVHqeLPad2 .arrowheadPath{fill:#333333;}#mermaid-svg-cpS9CPwVHqeLPad2 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-cpS9CPwVHqeLPad2 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-cpS9CPwVHqeLPad2 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-cpS9CPwVHqeLPad2 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-cpS9CPwVHqeLPad2 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-cpS9CPwVHqeLPad2 .cluster text{fill:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 .cluster span{color:#333;}#mermaid-svg-cpS9CPwVHqeLPad2 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-cpS9CPwVHqeLPad2 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 创建图形对象 组合图形对象 操作图形对象 撤销操作 重做操作 模块依赖关系图 #mermaid-svg-VdpReMmen5jniveI {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-VdpReMmen5jniveI .error-icon{fill:#552222;}#mermaid-svg-VdpReMmen5jniveI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-VdpReMmen5jniveI .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-VdpReMmen5jniveI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-VdpReMmen5jniveI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-VdpReMmen5jniveI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-VdpReMmen5jniveI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-VdpReMmen5jniveI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-VdpReMmen5jniveI .marker.cross{stroke:#333333;}#mermaid-svg-VdpReMmen5jniveI svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-VdpReMmen5jniveI .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-VdpReMmen5jniveI .cluster-label text{fill:#333;}#mermaid-svg-VdpReMmen5jniveI .cluster-label span{color:#333;}#mermaid-svg-VdpReMmen5jniveI .label text,#mermaid-svg-VdpReMmen5jniveI span{fill:#333;color:#333;}#mermaid-svg-VdpReMmen5jniveI .node rect,#mermaid-svg-VdpReMmen5jniveI .node circle,#mermaid-svg-VdpReMmen5jniveI .node ellipse,#mermaid-svg-VdpReMmen5jniveI .node polygon,#mermaid-svg-VdpReMmen5jniveI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-VdpReMmen5jniveI .node .label{text-align:center;}#mermaid-svg-VdpReMmen5jniveI .node.clickable{cursor:pointer;}#mermaid-svg-VdpReMmen5jniveI .arrowheadPath{fill:#333333;}#mermaid-svg-VdpReMmen5jniveI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-VdpReMmen5jniveI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-VdpReMmen5jniveI .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-VdpReMmen5jniveI .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-VdpReMmen5jniveI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-VdpReMmen5jniveI .cluster text{fill:#333;}#mermaid-svg-VdpReMmen5jniveI .cluster span{color:#333;}#mermaid-svg-VdpReMmen5jniveI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-VdpReMmen5jniveI :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} GraphicEditor Shape CompositeShape Circle Rectangle Command MoveCommand DeleteCommand CommandHistory Memento ShapeState 模式选择 图形对象设计 模式选择:组合模式原因:组合模式适用于将对象组合成树形结构以表示部分-整体层次。图形对象可以看作树结构中的叶子节点,而组合图形可以看作树的根节点。使用组合模式能够方便地处理图形对象的组合和操作。操作设计 模式选择:命令模式原因:命令模式用于将请求封装成对象,使得可以用不同的请求、队列或者日志来参数化其他对象。图形编辑器需要支持操作的撤销与重做,使用命令模式可以将这些操作封装成独立的对象,从而使系统更灵活和易于扩展。状态管理设计 模式选择:备忘录模式原因:备忘录模式用于在不破坏封装性的前提下捕获并保存一个对象的内部状态,以便在以后恢复它。图形编辑器需要支持操作的撤销与重做,使用备忘录模式可以保存图形对象的状态并在需要时恢复。详细设计与实现 数据模型 组合模式(图形对象) import java.util.ArrayList; import java.util.List;// 图形接口 interface Shape {void draw();void move(int x, int y);ShapeMemento saveState();void restoreState(ShapeMemento memento); }// 圆形类 class Circle implements Shape {private int
http://www.dnsts.com.cn/news/224096.html

相关文章:

  • 上海做网站找哪家好都匀网站制作
  • 如何用手机做网站万网是干什么用的
  • 网站轮播广告动画怎么做瀑布流分享网站源代码下载
  • 网站建设的可行性报告范文钢材贸易网站建设
  • 网站屏幕自适应代码wordpress中文文档
  • 郑州网站制作汉狮网络wordpress 获取当前文章的分类id
  • 做公司网站需要营业执照吗域名备案与网站不一致
  • 佛山网站推广哪家专业wordpress php 5.3.x
  • 营销型网站建设 博客国内全屏网站有哪些
  • 江门建站公司网上注册公司经营范围填不了
  • 怎么做网站扫码支付米拓网站建设
  • 主流网站风格h5响应式网站技术
  • 网站建设是前端吗西宁高端网站制作公司
  • 备份wordpress网站公司最近想做个网站怎么办
  • 漯河网站超市建设网站备案流程核验单
  • wordpress 上传网站西安网站开发建设
  • 2017做网站怎么赚钱网站建设与管理实务
  • 绿韵建设有限公司网站wordpress汉化.po
  • wap视频网站建设难吗?安徽省建设厅网站巅川建设有限公司
  • 网站建设最新技术2017做网站还赚钱吗
  • 烟台城乡建设学校官方网站南京seo排名外包
  • wordpress 删除 下载seo关键词优化提高网站排名
  • 网站删除留言板功能删除网页设计网站制作流程
  • 哪些网站可以做外部锚文本如何让网站免费
  • 婚纱影楼网站源码怎么创建网站免费的
  • 本地建网站的详细步骤网站推广效果不好原因是
  • 买网站网站到期查询
  • ps如何做网站广州网站制作哪家公司好
  • 手机网站报价单模板下载创造你魔法官方网站起做欢的事
  • wordpress的网站是php的代码展馆设计方案