79 Commits

Author SHA1 Message Date
Trismegiste
3aa38f2af8 more abstract example 2013-05-11 16:13:43 +02:00
Trismegiste
986aa7cf02 Merge branch 'iterator-a-simpler-example' 2013-05-11 14:46:41 +02:00
Trismegiste
aa8069fc45 a relevant example for iterator 2013-05-11 12:47:26 +02:00
Trismegiste
94edeede4e Comments to explain how this example misses the point of the pattern 2013-05-11 12:01:06 +02:00
Trismegiste
44e03cae46 more test to show the key features of patterns 2013-05-11 10:49:44 +02:00
Trismegiste
661d7e80a3 todo test 2013-05-11 02:56:50 +02:00
Trismegiste
6b77eb71e6 spacing 2013-05-11 02:51:57 +02:00
Trismegiste
17429eb85a Merge branch 'decorator-the-right-way' 2013-05-11 02:50:42 +02:00
Trismegiste
185baaae73 test decorator 2013-05-11 02:50:22 +02:00
Trismegiste
55017fb43f fix PSR-0 2013-05-11 02:50:05 +02:00
Trismegiste
cfa9014906 fixing namespace 2013-05-11 02:07:29 +02:00
Trismegiste
97096bc23f fixing the inheritance tree for decorator 2013-05-11 02:06:15 +02:00
Trismegiste
794139d47c Merge branch 'composite-the-right-way' 2013-05-11 01:46:57 +02:00
Trismegiste
42dd2383c1 test for rendering with embedded form 2013-05-11 01:46:13 +02:00
Trismegiste
e70395c0a3 improving the render to show the tree with indentations 2013-05-11 01:36:57 +02:00
Trismegiste
007a2d6171 changing interface to improve rendering 2013-05-11 01:24:40 +02:00
Trismegiste
f76b8b1ab3 you MUST inherit from the component contract. If not, this is no longer a composite pattern 2013-05-11 01:22:18 +02:00
Trismegiste
6443fecebc PSR-0 with tests 2013-05-11 01:17:22 +02:00
Trismegiste
5f457c2701 Merge branch 'factories-factories-everywhere' 2013-05-11 01:08:07 +02:00
Trismegiste
153445b5d0 comment and typo 2013-05-11 00:28:22 +02:00
Trismegiste
eebdbc1dc5 a REAL abstract factory not a helper-like full of static 2013-05-10 23:54:19 +02:00
Trismegiste
3a3937f339 typo 2013-05-10 21:49:22 +02:00
Trismegiste
d4ae3bcd8f use constant instead of string 2013-05-10 21:29:43 +02:00
Trismegiste
cc765bde41 the REAL factory method pattern 2013-05-10 21:09:55 +02:00
Trismegiste
9b7330795d (not design) pattern : simple factory 2013-05-10 20:22:43 +02:00
Trismegiste
87d4c9277d test for static factory 2013-05-10 19:52:53 +02:00
Trismegiste
2bea1f390f PSR-0 for Static Factory 2013-05-10 19:51:51 +02:00
Trismegiste
7ca8f615d7 the right place 2013-05-10 19:51:49 +02:00
Trismegiste
148bf4934d light bootstrap for unit tests 2013-05-10 19:51:19 +02:00
Trismegiste
b82330941f gitignore for netbeans 2013-05-10 19:12:02 +02:00
Dominik Liebler
cd2183b2a2 added Command pattern 2013-05-10 11:27:41 +02:00
Matt Iversen
b8381e5a60 Proper example of Decorator pattern
Previous example was simply implementing a strategy pattern.

A key problem is that WebService made clear that it did no actual output of its own - it handed it off to 'decorators'.

A decorator should always wrap a class that already has its own complete, self-contained functionality.

In this way, they only enhance / modify it. An instance that is non-decorated should work fully by itself.

Note the distinguishing difference between this and sub-classing - here the enhancement is added dynamically, at runtime, and to one instance.

With sub-classing, the enhancement is added at compile / parse time, and is applied to all instances / uses of the subclass.
2013-05-10 11:14:19 +02:00
Dominik Liebler
79c0808858 Merge pull request #11 from dave1010/patch-3
Fix PHPDoc in FactoryMethod
2013-05-10 02:07:37 -07:00
Dominik Liebler
2c239bf70e Merge pull request #9 from dave1010/patch-1
Implicit method visibility (instead of implied public)
2013-05-10 02:05:04 -07:00
Dominik Liebler
5f9cfa47ab Merge pull request #10 from dave1010/patch-2
Fix typo
2013-05-10 02:04:33 -07:00
Dominik Liebler
21d7dd1018 Merge pull request #8 from inglobal/master
Static keyword in Singleton.php
2013-05-10 02:03:58 -07:00
Dave Hulbert
6d5f72beec Fix PHPDoc in FactoryMethod 2013-05-09 10:11:42 +02:00
Dave Hulbert
f207444307 Fix typo 2013-05-09 10:10:54 +02:00
Dave Hulbert
7514c6c986 Implicit method visibility (instead of implied public) 2013-05-09 10:07:09 +02:00
Alexey
7f540427ee omitted static declaration 2013-05-08 15:30:54 +04:00
Dominik Liebler
16e2cbcfcd Merge pull request #3 from garrus/master
Added examples in Yii Framework
2013-05-08 03:25:22 -07:00
Dominik Liebler
b772dec18f Merge pull request #2 from phybros/master
Fix typo in DependencyInjection directory name
2013-05-08 00:00:28 -07:00
Dominik Liebler
ceb6a3eeb9 fixed typo in Singleton 2013-05-08 07:51:19 +03:00
Garrus MacTavish
0d35ab368b fix a typo 2013-05-08 01:06:11 +08:00
Garrus MacTavish
7ee0315f18 descript examples in Yii Framework for 3 patterns 2013-05-08 01:05:58 +08:00
Will Warren
da63649afe Fixed typo in DepencyInjection directory name 2013-05-07 10:19:59 -04:00
Dominik Liebler
1d554ddce3 Update DependenyInjection/DependencyInjection.php 2013-01-23 13:16:36 +01:00
Dominik Liebler
2dbd0cabac added Visitor pattern 2012-09-01 11:05:56 +02:00
Dominik Liebler
b5d9ed4ed3 added Visitor pattern 2012-08-27 17:06:10 +02:00
Dominik Liebler
9127a92b27 Update master 2012-06-15 15:33:21 +03:00