├── adapter.png ├── bridge.png ├── composite.png ├── prototype.png ├── singleton.png ├── abstractFactory.png ├── factoryMethod.png └── README.md /adapter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/adapter.png -------------------------------------------------------------------------------- /bridge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/bridge.png -------------------------------------------------------------------------------- /composite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/composite.png -------------------------------------------------------------------------------- /prototype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/prototype.png -------------------------------------------------------------------------------- /singleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/singleton.png -------------------------------------------------------------------------------- /abstractFactory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/abstractFactory.png -------------------------------------------------------------------------------- /factoryMethod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stillerr/yuml-design-patterns/HEAD/factoryMethod.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Design patterns in yUML 2 | 3 | > Design patterns written down using [yUML](https://github.com/jaime-olivares/yuml-diagram/wiki) 4 | 5 | ## Abstract Factory 6 | 7 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/abstractFactory.png) 8 | 9 | ```yuml 10 | [<<interface>>;AbstractFactory|+createProduct();]^-.-[ConcreteFactory|+createProduct();], 11 | [<<interface>>;AbstractProduct]^-.-[ConcreteProduct] 12 | ``` 13 | 14 | ## Builder 15 | 16 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/builder.png) 17 | 18 | ```yuml 19 | [Director|+build();]++-[Builder|+buildPart();], [Builder]^-.-[ConcreteBuilder|+buildPart();+getResult():Product;] 20 | ``` 21 | 22 | ## FactoryMethod 23 | 24 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/factoryMethod.png) 25 | 26 | ```yuml 27 | [Creator|+factoryMethod():Product;]^-[ConcreteCreator|+factoryMethod():Product;] 28 | ``` 29 | 30 | ## Prototype 31 | 32 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/prototype.png) 33 | 34 | ```yuml 35 | [<<interface>>;Prototype|+clone():Prototype;]^-.-[ConcretePrototypeB|+clone():Prototype;], 36 | [<<interface>>;Prototype|+clone():Prototype;]^-.-[ConcretePrototypeA|+clone():Prototype;] 37 | ``` 38 | 39 | ## Singleton 40 | 41 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/singleton.png) 42 | 43 | ```yuml 44 | [Singleton|-instance:Singleton = null|-Singleton();+getInstance():Singleton;] 45 | ``` 46 | 47 | ## Adapter 48 | 49 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/adapter.png) 50 | 51 | ```yuml 52 | [<<interface>>;Target|+request();]^-.-[Adapter|+request();], 53 | [Adapter]-^[Adaptee|+specificRequest();] 54 | ``` 55 | 56 | ## Bridge 57 | 58 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/bridge.png) 59 | 60 | ```yuml 61 | [Abstraction|-impl:Implementor;+function()]^-[RefinedAbstraction |+refinedFunction();], 62 | [Abstraction]<>-[Implementor|+implementation();], 63 | [Implementor]^-[ConceteImplementor|+implementation();] 64 | ``` 65 | 66 | ## Composite 67 | 68 | ![alt tag](https://raw.githubusercontent.com/stillerr/yuml-design-patterns/master/composite.png) 69 | 70 | ```yuml 71 | [Component|+opertation()]^-[Leaf|+operation();], 72 | [Component]^-[Composite|+operation();+add();+remove();+getChild()], 73 | [Component]0..*-<>1[Composite] 74 | ``` 75 | --------------------------------------------------------------------------------