Design Pattern: Singleton (Creational)
Intent: Ensures a class only has one instance and provide a global point of access to it [1].
Motivation: It's important for some classes to have exactly one instance. For example, it can be desirable to have only a single instance of a GUI. With a MATLAB® GUIDE built GUI, the driver or main function provides a global point of access which is executed to,
1. initially instantiate the GUI; and
2. subsequently bring the existing GUI into focus *not* creating a new one.
Refer to the comments in 'Singleton.m' and 'SingletonImpl.m' for detail on the implementation. The script 'testSingletonImpl.m' demonstrates the use of 'SingletonImpl.m'. Further, a corresponding UML class diagram is illustrated in 'Singleton_UML_Diagram.pdf'.
Refer to pp.127-134 Gamma et al.[1] for more information on the Singleton Design Pattern.
Written by Bobby Nedelkovski
The MathWorks Australia Pty Ltd
Copyright 2009, The MathWorks, Inc.
Reference:
[1] Gamma, E., Helm, R., Johnson, R. and Vlissides, J. Design Patterns : Elements of Reusable Object-Oriented Software. Boston: Addison-Wesley, 1995.
Cita come
Rob Purser (2025). Design Pattern: Singleton (Creational) (https://it.mathworks.com/matlabcentral/fileexchange/24911-design-pattern-singleton-creational), MATLAB Central File Exchange. Recuperato .
Compatibilità della release di MATLAB
Compatibilità della piattaforma
Windows macOS LinuxCategorie
Tag
Riconoscimenti
Ispirato: Matlab logging facility
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Scopri Live Editor
Crea script con codice, output e testo formattato in un unico documento eseguibile.
html/
| Versione | Pubblicato | Note della release | |
|---|---|---|---|
| 1.2.0.1 | Updated license |
||
| 1.2.0.0 | Updated UML diagram to reflect inheritence from 'handle' class and usage of persistent variable 'uniqueInstance' in concrete class 'SingletonImpl'. Also MathWorks registered trademarks added to files. |
||
| 1.0.0.0 |
