小木游戏吧 关注:1贴子:105

设计模式(C#)——单例模式

只看楼主收藏回复

为什么要学习设计模式呢?我以前也思考过很多次这个问题,现在也还困惑。为什么我最后还是选择了学设计模式呢?因为在游戏中,用到的次数太多了,真的有必要学习了,所以我打算来好好研究一下。


IP属地:四川1楼2018-12-18 15:08回复
    为什么要学习设计模式呢?我以前也思考过很多次这个问题,现在也还困惑。为什么我最后还是选择了学设计模式呢?因为在游戏中,用到的次数太多了,真的有必要学习了,所以我打算来好好研究一下。


    IP属地:四川2楼2018-12-18 15:08
    回复
      今天开始,我将与大家一起来学习设计模式,博主是做游戏的,所以我采用C#语言来与大家分享设计模式,话不多说,我们直接进入正题——单例模式


      IP属地:四川3楼2018-12-18 15:09
      回复
        单例模式是我遇到的第一个设计模式,也是最常用到的设计模式,几乎没个游戏都会用到单例。


        IP属地:四川4楼2018-12-18 15:09
        回复
          所谓单例,就是一个类只有一个实例。


          IP属地:四川5楼2018-12-18 15:09
          回复
            单例模式:确保一个类只有一个实例,并提供一个全局访问点。


            IP属地:四川6楼2018-12-18 15:09
            回复
              下面这个类图可以帮助大家更形象的理解。


              IP属地:四川7楼2018-12-18 15:09
              回复
                下面举个两个例子来帮助大家理解单例模式的应用


                IP属地:四川8楼2018-12-18 15:10
                回复
                  1.游戏中的使用:游戏中玩家的属性,不使用单利模式可能会出现玩家死亡增加血量的情况。为此,我们引入单例,使得同一时间只允许一个实例对其操作。


                  IP属地:四川9楼2018-12-18 15:10
                  回复
                    2.现实中的例子:打印机,一个设备如果同时打印两个文件,会出现两个文件内容交错现象。


                    IP属地:四川10楼2018-12-18 15:10
                    回复
                      现在我们已经大致了解了单例模式的应用场景,那么,在游戏中我们如何实现呢?


                      IP属地:四川11楼2018-12-18 15:10
                      回复
                        从单例模式中我们可以总结两个要点:
                        (1)确保一个类只有一个实例;
                        (2)提供一个访问它的全局访问点;


                        IP属地:四川12楼2018-12-18 15:10
                        回复
                          工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来。通俗来说,你只关心怎么用,不用关心怎么做。


                          IP属地:四川13楼2018-12-18 15:11
                          回复
                            工厂模式可以分为三类:
                            1.简单工厂模式(Simple Factory)
                            2.工厂方法模式(Factory Method)
                            3.抽象工厂模式(Abstract Factory)


                            IP属地:四川14楼2018-12-18 15:11
                            回复
                              掌握简单工厂模式是我们学习工厂模式最基础的条件,只有理解了简单的,才能更深入的学习。对于刚接触设计模式的朋友来说,看前一篇单例模式的朋友觉得挺轻松,但今天要将的工厂模式可能就不是特别容易消化了。为了让大家更深刻的理解这个模式,我将给大家展现出一个有趣的学习过程。


                              IP属地:四川15楼2018-12-18 15:11
                              回复