├── .gitattributes ├── .gitignore ├── Chapter 1 ├── composer.json ├── index.php ├── src │ ├── Animal.php │ ├── Book.php │ ├── Cat.php │ └── Dog.php └── vendor │ ├── autoload.php │ └── composer │ ├── ClassLoader.php │ ├── LICENSE │ ├── autoload_classmap.php │ ├── autoload_namespaces.php │ ├── autoload_psr4.php │ ├── autoload_real.php │ └── installed.json ├── Chapter 2 ├── ApacheProxyPass │ └── vhost.conf └── BlindFaith │ ├── HorrendouslyInsecure.php │ └── better.php ├── Chapter 3 ├── .idea │ ├── .name │ ├── encodings.xml │ ├── misc.xml │ ├── modules.xml │ ├── php.xml │ ├── phpBook3.iml │ └── workspace.xml ├── Abstract │ ├── SFToyFactory.php │ ├── ToyFactory.php │ ├── UKToyFactory.php │ └── index.php ├── Builder │ ├── Pizza.php │ ├── PizzaBuilder.php │ └── index.php ├── FactoryMethod │ ├── CourierNotifierFactory.php │ ├── ElectronicNotifierFactory.php │ ├── Email.php │ ├── Notifier.php │ ├── NotifierFactory.php │ ├── Post.php │ ├── SMS.php │ └── index.php ├── LazyLoader │ ├── Burger.php │ ├── BurgerLazyLoader.php │ └── index.php ├── Prototype │ ├── Student.php │ └── index.php └── SimpleFactory │ ├── Email.php │ ├── Notifier.php │ ├── NotifierFactory.php │ ├── SMS.php │ └── index.php ├── Chapter 4 ├── .idea │ ├── .name │ ├── encodings.xml │ ├── misc.xml │ ├── modules.xml │ ├── php.xml │ ├── phpBook4.iml │ └── workspace.xml ├── Bridge │ ├── Device.php │ ├── InstantMessenger.php │ ├── Messenger.php │ ├── Phone.php │ ├── SMS.php │ ├── Tablet.php │ ├── Transmitter.php │ └── index.php ├── ClassAdapter │ ├── ATM.php │ ├── ATMWithPhoneTopUp.php │ └── index.php ├── Composite │ ├── Music.php │ ├── Playlist.php │ ├── Song.php │ └── index.php ├── Decorator │ ├── Book.php │ ├── EBook.php │ ├── PrintBook.php │ └── index.php ├── Flyweight │ ├── Circle.php │ ├── Shape.php │ ├── ShapeFactory.php │ └── index.php ├── ObjectAdapter │ ├── Insurance.php │ ├── InsuranceMarketCompare.php │ ├── MarketCompare.php │ └── index.php └── Proxy │ ├── AnimalFeeder.php │ ├── AnimalFeederProxy.php │ ├── AnimalFeeders │ ├── Cat.php │ └── Dog.php │ └── index.php ├── Chapter 5 ├── ChainOfResponsibility │ ├── AssociatePurchaser.php │ ├── BoardPurchaser.php │ ├── DirectorPurchaser.php │ ├── ManagerPurchaser.php │ ├── Purchaser.php │ └── index.php ├── Generator │ └── index.php ├── Iterator │ ├── index.php │ └── time.php ├── Observer │ ├── Feed.php │ ├── Reader.php │ └── index.php ├── Specification │ ├── EmployeeIsEngineer.php │ ├── EmployeeSpecification.php │ └── index.php ├── Strategy │ ├── Cube.php │ ├── Power.php │ ├── RaiseNumber.php │ ├── Square.php │ └── index.php └── Template │ ├── MeatballPasta.php │ ├── Pasta.php │ ├── VeganPasta.php │ └── index.php ├── Chapter 6 ├── GettingStarted │ ├── composer.json │ ├── recieve.php │ └── send.php └── PubSub │ ├── composer.json │ ├── recieve.php │ └── send.php ├── Chapter 7 ├── assignmentsToParameters │ ├── After.php │ └── Before.php ├── extractMethod │ ├── after │ │ ├── Dice.php │ │ └── index.php │ └── before │ │ ├── LegacyDice.php │ │ └── index.php ├── indecentExposure │ ├── after │ │ └── Human.php │ └── before │ │ └── Human.php ├── primativeObsession │ ├── after │ │ ├── Employee.php │ │ └── Salary.php │ ├── before │ │ └── Salary.php │ └── repairedFeatureEnvy │ │ └── Employee.php └── switch │ ├── after.php │ └── before.php ├── README.md └── geocodedData.Rdata /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/.gitignore -------------------------------------------------------------------------------- /Chapter 1/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/composer.json -------------------------------------------------------------------------------- /Chapter 1/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/index.php -------------------------------------------------------------------------------- /Chapter 1/src/Animal.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/src/Animal.php -------------------------------------------------------------------------------- /Chapter 1/src/Book.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/src/Book.php -------------------------------------------------------------------------------- /Chapter 1/src/Cat.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/src/Cat.php -------------------------------------------------------------------------------- /Chapter 1/src/Dog.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/src/Dog.php -------------------------------------------------------------------------------- /Chapter 1/vendor/autoload.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/autoload.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/ClassLoader.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/ClassLoader.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/LICENSE -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/autoload_classmap.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/autoload_classmap.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/autoload_namespaces.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/autoload_namespaces.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/autoload_psr4.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/autoload_psr4.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/autoload_real.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 1/vendor/composer/autoload_real.php -------------------------------------------------------------------------------- /Chapter 1/vendor/composer/installed.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /Chapter 2/ApacheProxyPass/vhost.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 2/ApacheProxyPass/vhost.conf -------------------------------------------------------------------------------- /Chapter 2/BlindFaith/HorrendouslyInsecure.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 2/BlindFaith/HorrendouslyInsecure.php -------------------------------------------------------------------------------- /Chapter 2/BlindFaith/better.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 2/BlindFaith/better.php -------------------------------------------------------------------------------- /Chapter 3/.idea/.name: -------------------------------------------------------------------------------- 1 | phpBook3 -------------------------------------------------------------------------------- /Chapter 3/.idea/encodings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/encodings.xml -------------------------------------------------------------------------------- /Chapter 3/.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/misc.xml -------------------------------------------------------------------------------- /Chapter 3/.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/modules.xml -------------------------------------------------------------------------------- /Chapter 3/.idea/php.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/php.xml -------------------------------------------------------------------------------- /Chapter 3/.idea/phpBook3.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/phpBook3.iml -------------------------------------------------------------------------------- /Chapter 3/.idea/workspace.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/.idea/workspace.xml -------------------------------------------------------------------------------- /Chapter 3/Abstract/SFToyFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Abstract/SFToyFactory.php -------------------------------------------------------------------------------- /Chapter 3/Abstract/ToyFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Abstract/ToyFactory.php -------------------------------------------------------------------------------- /Chapter 3/Abstract/UKToyFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Abstract/UKToyFactory.php -------------------------------------------------------------------------------- /Chapter 3/Abstract/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Abstract/index.php -------------------------------------------------------------------------------- /Chapter 3/Builder/Pizza.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Builder/Pizza.php -------------------------------------------------------------------------------- /Chapter 3/Builder/PizzaBuilder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Builder/PizzaBuilder.php -------------------------------------------------------------------------------- /Chapter 3/Builder/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Builder/index.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/CourierNotifierFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/CourierNotifierFactory.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/ElectronicNotifierFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/ElectronicNotifierFactory.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/Email.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/Email.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/Notifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/Notifier.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/NotifierFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/NotifierFactory.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/Post.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/Post.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/SMS.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/SMS.php -------------------------------------------------------------------------------- /Chapter 3/FactoryMethod/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/FactoryMethod/index.php -------------------------------------------------------------------------------- /Chapter 3/LazyLoader/Burger.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/LazyLoader/Burger.php -------------------------------------------------------------------------------- /Chapter 3/LazyLoader/BurgerLazyLoader.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/LazyLoader/BurgerLazyLoader.php -------------------------------------------------------------------------------- /Chapter 3/LazyLoader/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/LazyLoader/index.php -------------------------------------------------------------------------------- /Chapter 3/Prototype/Student.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Prototype/Student.php -------------------------------------------------------------------------------- /Chapter 3/Prototype/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/Prototype/index.php -------------------------------------------------------------------------------- /Chapter 3/SimpleFactory/Email.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/SimpleFactory/Email.php -------------------------------------------------------------------------------- /Chapter 3/SimpleFactory/Notifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/SimpleFactory/Notifier.php -------------------------------------------------------------------------------- /Chapter 3/SimpleFactory/NotifierFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/SimpleFactory/NotifierFactory.php -------------------------------------------------------------------------------- /Chapter 3/SimpleFactory/SMS.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/SimpleFactory/SMS.php -------------------------------------------------------------------------------- /Chapter 3/SimpleFactory/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 3/SimpleFactory/index.php -------------------------------------------------------------------------------- /Chapter 4/.idea/.name: -------------------------------------------------------------------------------- 1 | phpBook4 -------------------------------------------------------------------------------- /Chapter 4/.idea/encodings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/encodings.xml -------------------------------------------------------------------------------- /Chapter 4/.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/misc.xml -------------------------------------------------------------------------------- /Chapter 4/.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/modules.xml -------------------------------------------------------------------------------- /Chapter 4/.idea/php.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/php.xml -------------------------------------------------------------------------------- /Chapter 4/.idea/phpBook4.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/phpBook4.iml -------------------------------------------------------------------------------- /Chapter 4/.idea/workspace.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/.idea/workspace.xml -------------------------------------------------------------------------------- /Chapter 4/Bridge/Device.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/Device.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/InstantMessenger.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/InstantMessenger.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/Messenger.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/Messenger.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/Phone.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/Phone.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/SMS.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/SMS.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/Tablet.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/Tablet.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/Transmitter.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/Transmitter.php -------------------------------------------------------------------------------- /Chapter 4/Bridge/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Bridge/index.php -------------------------------------------------------------------------------- /Chapter 4/ClassAdapter/ATM.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ClassAdapter/ATM.php -------------------------------------------------------------------------------- /Chapter 4/ClassAdapter/ATMWithPhoneTopUp.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ClassAdapter/ATMWithPhoneTopUp.php -------------------------------------------------------------------------------- /Chapter 4/ClassAdapter/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ClassAdapter/index.php -------------------------------------------------------------------------------- /Chapter 4/Composite/Music.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Composite/Music.php -------------------------------------------------------------------------------- /Chapter 4/Composite/Playlist.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Composite/Playlist.php -------------------------------------------------------------------------------- /Chapter 4/Composite/Song.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Composite/Song.php -------------------------------------------------------------------------------- /Chapter 4/Composite/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Composite/index.php -------------------------------------------------------------------------------- /Chapter 4/Decorator/Book.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Decorator/Book.php -------------------------------------------------------------------------------- /Chapter 4/Decorator/EBook.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Decorator/EBook.php -------------------------------------------------------------------------------- /Chapter 4/Decorator/PrintBook.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Decorator/PrintBook.php -------------------------------------------------------------------------------- /Chapter 4/Decorator/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Decorator/index.php -------------------------------------------------------------------------------- /Chapter 4/Flyweight/Circle.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Flyweight/Circle.php -------------------------------------------------------------------------------- /Chapter 4/Flyweight/Shape.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Flyweight/Shape.php -------------------------------------------------------------------------------- /Chapter 4/Flyweight/ShapeFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Flyweight/ShapeFactory.php -------------------------------------------------------------------------------- /Chapter 4/Flyweight/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Flyweight/index.php -------------------------------------------------------------------------------- /Chapter 4/ObjectAdapter/Insurance.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ObjectAdapter/Insurance.php -------------------------------------------------------------------------------- /Chapter 4/ObjectAdapter/InsuranceMarketCompare.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ObjectAdapter/InsuranceMarketCompare.php -------------------------------------------------------------------------------- /Chapter 4/ObjectAdapter/MarketCompare.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ObjectAdapter/MarketCompare.php -------------------------------------------------------------------------------- /Chapter 4/ObjectAdapter/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/ObjectAdapter/index.php -------------------------------------------------------------------------------- /Chapter 4/Proxy/AnimalFeeder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Proxy/AnimalFeeder.php -------------------------------------------------------------------------------- /Chapter 4/Proxy/AnimalFeederProxy.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Proxy/AnimalFeederProxy.php -------------------------------------------------------------------------------- /Chapter 4/Proxy/AnimalFeeders/Cat.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Proxy/AnimalFeeders/Cat.php -------------------------------------------------------------------------------- /Chapter 4/Proxy/AnimalFeeders/Dog.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Proxy/AnimalFeeders/Dog.php -------------------------------------------------------------------------------- /Chapter 4/Proxy/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 4/Proxy/index.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/AssociatePurchaser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/AssociatePurchaser.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/BoardPurchaser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/BoardPurchaser.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/DirectorPurchaser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/DirectorPurchaser.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/ManagerPurchaser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/ManagerPurchaser.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/Purchaser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/Purchaser.php -------------------------------------------------------------------------------- /Chapter 5/ChainOfResponsibility/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/ChainOfResponsibility/index.php -------------------------------------------------------------------------------- /Chapter 5/Generator/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Generator/index.php -------------------------------------------------------------------------------- /Chapter 5/Iterator/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Iterator/index.php -------------------------------------------------------------------------------- /Chapter 5/Iterator/time.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Iterator/time.php -------------------------------------------------------------------------------- /Chapter 5/Observer/Feed.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Observer/Feed.php -------------------------------------------------------------------------------- /Chapter 5/Observer/Reader.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Observer/Reader.php -------------------------------------------------------------------------------- /Chapter 5/Observer/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Observer/index.php -------------------------------------------------------------------------------- /Chapter 5/Specification/EmployeeIsEngineer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Specification/EmployeeIsEngineer.php -------------------------------------------------------------------------------- /Chapter 5/Specification/EmployeeSpecification.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Specification/EmployeeSpecification.php -------------------------------------------------------------------------------- /Chapter 5/Specification/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Specification/index.php -------------------------------------------------------------------------------- /Chapter 5/Strategy/Cube.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Strategy/Cube.php -------------------------------------------------------------------------------- /Chapter 5/Strategy/Power.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Strategy/Power.php -------------------------------------------------------------------------------- /Chapter 5/Strategy/RaiseNumber.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Strategy/RaiseNumber.php -------------------------------------------------------------------------------- /Chapter 5/Strategy/Square.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Strategy/Square.php -------------------------------------------------------------------------------- /Chapter 5/Strategy/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Strategy/index.php -------------------------------------------------------------------------------- /Chapter 5/Template/MeatballPasta.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Template/MeatballPasta.php -------------------------------------------------------------------------------- /Chapter 5/Template/Pasta.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Template/Pasta.php -------------------------------------------------------------------------------- /Chapter 5/Template/VeganPasta.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Template/VeganPasta.php -------------------------------------------------------------------------------- /Chapter 5/Template/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 5/Template/index.php -------------------------------------------------------------------------------- /Chapter 6/GettingStarted/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/GettingStarted/composer.json -------------------------------------------------------------------------------- /Chapter 6/GettingStarted/recieve.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/GettingStarted/recieve.php -------------------------------------------------------------------------------- /Chapter 6/GettingStarted/send.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/GettingStarted/send.php -------------------------------------------------------------------------------- /Chapter 6/PubSub/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/PubSub/composer.json -------------------------------------------------------------------------------- /Chapter 6/PubSub/recieve.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/PubSub/recieve.php -------------------------------------------------------------------------------- /Chapter 6/PubSub/send.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 6/PubSub/send.php -------------------------------------------------------------------------------- /Chapter 7/assignmentsToParameters/After.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/assignmentsToParameters/After.php -------------------------------------------------------------------------------- /Chapter 7/assignmentsToParameters/Before.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/assignmentsToParameters/Before.php -------------------------------------------------------------------------------- /Chapter 7/extractMethod/after/Dice.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/extractMethod/after/Dice.php -------------------------------------------------------------------------------- /Chapter 7/extractMethod/after/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/extractMethod/after/index.php -------------------------------------------------------------------------------- /Chapter 7/extractMethod/before/LegacyDice.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/extractMethod/before/LegacyDice.php -------------------------------------------------------------------------------- /Chapter 7/extractMethod/before/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/extractMethod/before/index.php -------------------------------------------------------------------------------- /Chapter 7/indecentExposure/after/Human.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/indecentExposure/after/Human.php -------------------------------------------------------------------------------- /Chapter 7/indecentExposure/before/Human.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/indecentExposure/before/Human.php -------------------------------------------------------------------------------- /Chapter 7/primativeObsession/after/Employee.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/primativeObsession/after/Employee.php -------------------------------------------------------------------------------- /Chapter 7/primativeObsession/after/Salary.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/primativeObsession/after/Salary.php -------------------------------------------------------------------------------- /Chapter 7/primativeObsession/before/Salary.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/primativeObsession/before/Salary.php -------------------------------------------------------------------------------- /Chapter 7/primativeObsession/repairedFeatureEnvy/Employee.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/primativeObsession/repairedFeatureEnvy/Employee.php -------------------------------------------------------------------------------- /Chapter 7/switch/after.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/switch/after.php -------------------------------------------------------------------------------- /Chapter 7/switch/before.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/Chapter 7/switch/before.php -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/README.md -------------------------------------------------------------------------------- /geocodedData.Rdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Mastering-PHP-Design-Patterns/HEAD/geocodedData.Rdata --------------------------------------------------------------------------------