From bd3c2cfc66b616bae0f0ccc6a54c8bb4557c0781 Mon Sep 17 00:00:00 2001 From: Dominik Liebler Date: Tue, 27 Dec 2016 08:08:10 +0100 Subject: [PATCH] updated UML for FactoryMethod --- .../FactoryMethod/uml/FactoryMethod.uml | 109 +- Creational/FactoryMethod/uml/uml.png | Bin 16925 -> 61777 bytes Creational/FactoryMethod/uml/uml.svg | 1597 ++++++++++------- 3 files changed, 1028 insertions(+), 678 deletions(-) diff --git a/Creational/FactoryMethod/uml/FactoryMethod.uml b/Creational/FactoryMethod/uml/FactoryMethod.uml index ec4249c..bb6d3b4 100644 --- a/Creational/FactoryMethod/uml/FactoryMethod.uml +++ b/Creational/FactoryMethod/uml/FactoryMethod.uml @@ -1,55 +1,54 @@ - - - PHP - \DesignPatterns\Creational\FactoryMethod\Bicycle - - \DesignPatterns\Creational\FactoryMethod\FactoryMethod - \DesignPatterns\Creational\FactoryMethod\Bicycle - \DesignPatterns\Creational\FactoryMethod\GermanFactory - \DesignPatterns\Creational\FactoryMethod\VehicleInterface - \DesignPatterns\Creational\FactoryMethod\ItalianFactory - \DesignPatterns\Creational\FactoryMethod\Ferrari - \DesignPatterns\Creational\FactoryMethod\Porsche - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fields - Constants - Constructors - Methods - - private - - + + + PHP + \DesignPatterns\Creational\FactoryMethod\GermanFactory + + \DesignPatterns\Creational\FactoryMethod\FactoryMethod + \DesignPatterns\Creational\FactoryMethod\Bicycle + \DesignPatterns\Creational\FactoryMethod\CarFerrari + \DesignPatterns\Creational\FactoryMethod\ItalianFactory + \DesignPatterns\Creational\FactoryMethod\CarMercedes + \DesignPatterns\Creational\FactoryMethod\GermanFactory + \DesignPatterns\Creational\FactoryMethod\VehicleInterface + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Fields + Constructors + Methods + + private + + diff --git a/Creational/FactoryMethod/uml/uml.png b/Creational/FactoryMethod/uml/uml.png index 0687038eefb535884c7e163d0c0c372082740e45..b705b228bc82b2168e8232745340f9732e7d9954 100644 GIT binary patch literal 61777 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 ZwRhl<*Dn5P7(L=sDKU9bsPM-x{|B*wE;0ZB diff --git a/Creational/FactoryMethod/uml/uml.svg b/Creational/FactoryMethod/uml/uml.svg index 62b8cc6..6ddd586 100644 --- a/Creational/FactoryMethod/uml/uml.svg +++ b/Creational/FactoryMethod/uml/uml.svg @@ -1,623 +1,974 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CHEAP - - - - - - - - - - FAST - - - - - - - - - - - - createVehicle(type) - - - - - - - - - create(type) - - - - - - - - - - - - - FactoryMethod - - - FactoryMethod - - - - - - - - - - - - - - - - - - - color - - - - - - - - - - - - setColor(rgb) - - - - - - - - - - - - - Bicycle - - - Bicycle - - - - - - - - - - - - - - - - - - createVehicle(type) - - - - - - - - - - - - - GermanFactory - - - GermanFactory - - - - - - - - - - - - - - - - - - - - - setColor(rgb) - - - - - - - - - - - - - VehicleInterface - - - VehicleInterface - - - - - - - - - - - - - - - - - - - - - - - - createVehicle(type) - - - - - - - - - - - - - ItalianFactory - - - ItalianFactory - - - - - - - - - - - - - - - - - - - color - - - - - - - - - - - - setColor(rgb) - - - - - - - - - - - - - Ferrari - - - Ferrari - - - - - - - - - - - - - - - - - - - - - - - - - color - - - - - - - - - - - - setColor(rgb) - - - - - - - - - addTuningAMG() - - - - - - - - - - - - - Porsche - - - Porsche - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + create(type) + + + + + + + + + + + + + FactoryMethod + + + FactoryMethod + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + + + + create(type) + + + + + + + + + + + + + FactoryMethod + + + FactoryMethod + + + + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + Bicycle + + + Bicycle + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + Bicycle + + + Bicycle + + + + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + CarFerrari + + + CarFerrari + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + CarFerrari + + + CarFerrari + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + ItalianFactory + + + ItalianFactory + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + ItalianFactory + + + ItalianFactory + + + + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + addAMGTuning() + + + + + + + + + + + + + CarMercedes + + + CarMercedes + + + + + + + + + + + + + + + + + + + + + + color + + + + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + + + + addAMGTuning() + + + + + + + + + + + + + CarMercedes + + + CarMercedes + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + GermanFactory + + + GermanFactory + + + + + + + + + + + + + + + + + + + + + + createVehicle(type) + + + + + + + + + + + + + GermanFactory + + + GermanFactory + + + + + + + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + VehicleInterface + + + VehicleInterface + + + + + + + + + + + + + + + + + + + + + + setColor(rgb) + + + + + + + + + + + + + VehicleInterface + + + VehicleInterface + + + + + + + + + + + + + + + + +