mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-07-25 09:11:17 +02:00
69 lines
1.1 KiB
ReStructuredText
69 lines
1.1 KiB
ReStructuredText
`Bridge`__
|
|
==========
|
|
|
|
Purpose
|
|
-------
|
|
|
|
Decouple an abstraction from its implementation so that the two can vary
|
|
independently.
|
|
|
|
Sample:
|
|
^^^^^^^
|
|
|
|
- `Symfony
|
|
DoctrineBridge <https://github.com/symfony/DoctrineBridge>`__
|
|
|
|
UML Diagram
|
|
-----------
|
|
|
|
.. image:: uml/uml.png
|
|
:alt: Alt Bridge UML Diagram
|
|
:align: center
|
|
|
|
Code
|
|
----
|
|
|
|
You can also find these code on `GitHub`_
|
|
|
|
FormatterInterface.php
|
|
|
|
.. literalinclude:: FormatterInterface.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
PlainTextFormatter.php
|
|
|
|
.. literalinclude:: PlainTextFormatter.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
HtmlFormatter.php
|
|
|
|
.. literalinclude:: HtmlFormatter.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
Service.php
|
|
|
|
.. literalinclude:: Service.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
HelloWorldService.php
|
|
|
|
.. literalinclude:: HelloWorldService.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
Test
|
|
----
|
|
|
|
Tests/BridgeTest.php
|
|
|
|
.. literalinclude:: Tests/BridgeTest.php
|
|
:language: php
|
|
:linenos:
|
|
|
|
.. _`GitHub`: https://github.com/domnikl/DesignPatternsPHP/tree/master/Structural/Bridge
|
|
.. __: http://en.wikipedia.org/wiki/Bridge_pattern
|