📝 设计模式

89篇技术文档
  艾玛迪斯实验室研发 |在校园(新生)|全职+实习

📅  最后修改于: 2021-09-10 02:51:51        🧑  作者: Mango

班加罗尔的 Amadeus Software Labs India LTD最近访问了 Thapar 工程技术学院 (TIET),分别介绍了软件开发人员和质量保证这两个不同的简介。最初的资格是:CGPA6.510、12/Dip。65%在收到感兴趣的学生的详细信息后,他们入围了219 名。其中 CGPA7.75和80%在第 10 和第 12 的截止。独特的部分是我没有被列入测试的候选名单,因为我的第 ...

  享元设计模式

📅  最后修改于: 2021-09-10 02:52:03        🧑  作者: Mango

Flyweight 模式是结构设计模式之一,因为该模式提供了减少对象数量从而改进应用程序所需对象结构的方法。当我们需要创建大量相似的对象(比如 105)时,使用享元模式。享元对象的一个重要特性是它们是不可变的。这意味着它们一旦被构造就不能被修改。为什么我们关心程序中的对象数量?更少的对象减少了内存使用量,它设法让我们远离与内存相关的错误,如Java.lang.OutOfMemoryError。尽管...

  纪念品设计模式

📅  最后修改于: 2021-09-10 02:52:14        🧑  作者: Mango

备忘录模式是一种行为设计模式。备忘录模式用于将对象的状态恢复到以前的状态。随着您的应用程序的进展,您可能希望在应用程序中保存检查点,并在以后恢复到这些检查点。UML 图纪念品设计模式设计组件originator :要为其保存状态的对象。它创建纪念品并在将来使用它来撤消。memento :将要维护发起者状态的对象。它只是一个POJO。caretaker :跟踪多个纪念品的对象。就像维护保存点一样。看...

  Java的单例类

📅  最后修改于: 2021-09-10 02:52:24        🧑  作者: Mango

在面向对象编程中,单例类是一次只能有一个对象(类的一个实例)的类。第一次之后,如果我们尝试实例化 Singleton 类,新变量也指向创建的第一个实例。因此,无论我们通过任何实例对类内的任何变量进行任何修改,它都会影响创建的单个实例的变量,并且如果我们通过定义的该类类型的任何变量访问该变量,则该变量是可见的。设计一个单例类:将构造函数设为私有。编写一个静态方法,该方法具有此单例类的返回类型对象。在...

  外观设计模式 |介绍

📅  最后修改于: 2021-09-10 02:52:35        🧑  作者: Mango

Facade 是 Gang of Four 设计模式的一部分,属于结构设计模式。在我们深入研究它的细节之前,让我们讨论一些将由这个特定模式解决的例子。所以,顾名思义,它的意思是建筑物的表面。走过马路的人只能看到这座建筑的玻璃面。他们对布线、管道和其他复杂情况一无所知。它隐藏了建筑物的所有复杂性,并显示出友好的面孔。更多例子在Java,JDBC 接口可以称为 Facade,因为我们作为用户或客户端使...

  解释器设计模式

📅  最后修改于: 2021-09-10 02:52:45        🧑  作者: Mango

解释器设计模式是行为设计模式的一种。解释器模式用于定义语言的语法表示,并提供解释器来处理该语法。这种模式涉及实现一个表达式接口,它告诉解释特定的上下文。该模式用于 SQL 解析、符号处理引擎等。此模式在表达式层次结构上执行。这里的每个表达式都是终结符或非终结符。解释器设计模式的树结构有点类似于复合设计模式定义的树结构,终端表达式是叶对象,非终端表达式是复合的。该树包含要评估的表达式,通常由解析器生...

  策略模式 |第一套(介绍)

📅  最后修改于: 2021-09-10 02:52:56        🧑  作者: Mango

与往常一样,我们将通过定义问题并使用策略模式来解决它来学习这种模式。假设我们正在构建一个游戏“街头霸王”。为简单起见,假设一个字符可能有四个动作,即踢、拳、滚和跳。每个字符都有踢腿和出拳动作,但滚动和跳跃是可选的。你会如何建模你的类?假设最初您使用继承并抽象出Fighter类中的共同特征,并让其他字符继承Fighter类。战斗机类将默认执行正常操作。任何具有特殊动作的字符都可以在其子类中覆盖该动作...

  桥梁设计模式

📅  最后修改于: 2021-09-10 02:53:07        🧑  作者: Mango

Bridge 设计模式允许您将抽象与实现分离。它是一种结构设计模式。Bridge 设计模式有两个部分:抽象执行这是一种将实现类封装在接口类内部的设计机制。桥接模式允许抽象和实现独立开发,客户端代码可以只访问抽象部分而不必关心实现部分。抽象是接口或抽象类,实现者也是接口或抽象类。抽象包含对实现者的引用。抽象的孩子被称为精炼抽象,实现者的孩子是具体的实现者。由于我们可以在抽象中更改对实现者的引用,因此...

  统一建模语言 (UML) |对象图

📅  最后修改于: 2021-09-10 02:53:18        🧑  作者: Mango

对象图可以被称为系统中实例以及它们之间存在的关系的屏幕截图。由于对象图描绘了对象被实例化时的行为,我们能够研究系统在特定时刻的行为。对象图对于描绘和理解系统的功能需求至关重要。换句话说,“统一建模语言 (UML) 中的对象图是显示特定时间建模系统结构的完整或部分视图的图。”对象和类图之间的区别 –对象图类似于类图,只是它显示了系统中类的实例。我们使用类图描绘了实际的分类器及其关系。另一方面,对象图...

  打印十字或 X 图案的 C++ 程序

📅  最后修改于: 2021-09-10 02:53:29        🧑  作者: Mango

给定一个数字 n,我们需要打印一个大小为 n 的 X 图案。我们需要打印 n 行和 n 列。所以我们运行两个嵌套循环。外循环逐行打印所有行(运行 i = 1 到 n)。内部循环(运行 j = 1 到 n)运行当前行的所有列。现在一行可以包含空格和“$”。我们如何决定将空间放在哪里以及“$”放在哪里。对于 i = 1 :第一列和最后一列应包含 ‘$’对于 i = 2 :第二列和倒数第二列应包含 ‘$...

  活动图中的泳道

📅  最后修改于: 2021-09-10 02:53:40        🧑  作者: Mango

面向对象设计中的活动图就像显示构成复杂过程(例如算法或工作流)的步骤序列的流程图。活动图在设计阶段的初始阶段最有用。例子:“售票机”的活动图示例如下所示:上述活动图未显示哪个组织执行特定活动泳道:泳道用于显示活动图中的哪个组织执行哪些活动。车道是划定的边界,特定组织的活动与该组织的活动在同一车道上绘制。必须以逻辑方式订购泳道。建议活动图中的泳道少于五个。泳道的优点在于它们结合了活动图对逻辑的描述和...

  装饰图案 |设置 1(背景)

📅  最后修改于: 2021-09-10 02:53:51        🧑  作者: Mango

为了理解装饰器模式,让我们考虑一个灵感来自“Head First Design Pattern”一书的场景。假设我们正在为一家比萨店构建一个应用程序,我们需要对他们的比萨类进行建模。假设他们提供四种类型的比萨,即 Peppy Paneer、Farmhouse、Margherita 和 Chicken Fiesta。最初我们只是使用继承并抽象出Pizza类中的通用功能。每个披萨都有不同的成本。我们已...

  观察者模式 |第一套(介绍)

📅  最后修改于: 2021-09-10 02:54:02        🧑  作者: Mango

让我们首先考虑以下场景来理解观察者模式。场景:假设我们正在构建一个板球应用程序,通知观众有关当前分数、运行率等信息。假设我们已经制作了两个显示元素 CurrentScoreDisplay 和 AverageScoreDisplay。 CricketData 拥有所有数据(跑步、保龄球等),每当数据更改时,显示元素都会收到新数据通知,并相应地显示最新数据。下面是这个设计的Java实现。输出:上述设计...

  抽象工厂模式

📅  最后修改于: 2021-09-10 02:54:12        🧑  作者: Mango

介绍抽象工厂设计模式是创造模式的一种。抽象工厂模式几乎类似于工厂模式,被认为是对工厂模式的另一层抽象。抽象工厂模式围绕创建其他工厂的超级工厂工作。抽象工厂模式实现为我们提供了一个框架,允许我们创建遵循通用模式的对象。因此,在运行时,抽象工厂与任何可以创建所需类型对象的具体工厂相结合。让我们看看抽象工厂模式的 GOF 表示:抽象工厂设计模式的 UML 类图示例。AbstractFactory:为创建...