标签: gang-of-four

什么是Gang of Four设计模式

我最近才知道Java中有一个名为Gang of Four(GoF)的设计模式.我无法理解它是什么以及它的用途.有人能说清楚吗?提前致谢.

java design-patterns gang-of-four

41
推荐指数
2
解决办法
9万
查看次数

JavaScript中的单例模式

下面是一个非常流行的JavaScript Singleton模式实现的示例:

var mySingleton = (function() {
    var instance;

    function init() {
        function privateMethod() {
            console.log("I am private");
        }
        var privateVariable = "Im also private";
        var privateRandomNumber = Math.random();
        return {
            publicMethod: function() {
                console.log("The public can see me!");
            },
            publicProperty: "I am also public",
            getRandomNumber: function() {
                return privateRandomNumber;
            }
        };
    };

    return {
        getInstance: function() {
            if (!instance) {
                instance = init();
            }
            return instance;
        }
    };
})();
Run Code Online (Sandbox Code Playgroud)

我已经考虑了一段时间,当我们用这个简单的代码实现相同的结果时,我并不真正理解这种复杂性的需要:

singleton = (function() {
    var obj = {
        someMethod: …
Run Code Online (Sandbox Code Playgroud)

javascript singleton design-patterns gang-of-four

14
推荐指数
1
解决办法
2767
查看次数

不是四人帮的设计模式?

我们都知道关于设计模式的伟大着作,被称为四人帮,以及福勒的企业模式.

我想提出这个讨厌的问题来收集不寻常的软件模式,用于模糊和好的情况,跨越过程编程,函数编程,OO和AO编程.给予您的想象力和体验充分的自由.

有点相关:https://stackoverflow.com/questions/37337/beyond-gof-design-patterns

design-patterns gang-of-four

7
推荐指数
2
解决办法
3117
查看次数

一帮四个设计模式 - Objective C示例代码?

我很好奇是否有人知道有四个设计模式的帮派可下载的Objective C示例代码?我正在寻找工作样本XCode项目,不介意付费!

顺便说一句,如果您正在寻找其他语言,您可以从这里开始使用Java在这里使用各种语言

design-patterns objective-c ios gang-of-four

7
推荐指数
1
解决办法
1778
查看次数

让一个请求由责任链模式中的多个处理程序处理

我正在学习设计模式以在代码中实现它,我想我发现了一种我认为可行的设计模式,但有一个重大缺陷。

我最终采用的模式是责任链模式。据我了解,有一个请求传递给单个处理程序,该处理程序将处理该请求或将其传递到链中。

我看到的唯一问题是它指定一旦处理程序之一处理请求,处理就会停止。我想要的东西会继续链式运行,并为每个处理程序提供处理请求的机会。

问题陈述

我正在创建一个应用程序,它将向一家公司发送发票,我想知道谁都看过发票并签字。我们需要确保每个部门都已签字,例如会计、财务等。重要的方面是原因 1 部门签署它不应该结束我认为在这种模式中发生的过程

这种模式完全有可能不适合我,如果是的话,您能建议我一种适合的模式吗?这不是一个课堂项目,这只是我学习使用模式并发现它在日常生活中的使用。

java design-patterns chain-of-responsibility gang-of-four

2
推荐指数
1
解决办法
2316
查看次数

Java接口设计模式情况

我遇到了问题.我的问题是这样的.我有一个超类Animal和两个子类Human和Bird.我在我的超类Animal中有一个fly方法,它将基于Flyable接口为Human和Bird类提供实现.

我的Animal类看起来像这样.

public class`Animal{

    public Flyable flyable;

    public void fly()
    {
        flyable.fly();
    } 

 } 
Run Code Online (Sandbox Code Playgroud)

Human Class看起来像这样

class Human extends Animal {

  Flyable flyable;

  public Human()
  {
   flyable = new CantFly();
  }

}
Run Code Online (Sandbox Code Playgroud)

鸟类看起来像这样

class Bird extends Animal {

      Flyable flyable;

      public Bird()
      {
       flyable = new FlyHigh();
      }

    }
Run Code Online (Sandbox Code Playgroud)

接口如下

public interface Flyable {
   public void fly();
}

public class CantFly implements Flyable{

    @Override
    public void fly()
    {
    Sysout("cant fly");
    }
Run Code Online (Sandbox Code Playgroud)

我打电话的时候

Animal me = new Human();
me.fly();
Run Code Online (Sandbox Code Playgroud)

它给了我NullPointerException

我在这里失踪了什么? …

java inheritance design-patterns interface gang-of-four

1
推荐指数
1
解决办法
280
查看次数