[pl translation] Behavioral.

This commit is contained in:
Piotr Grabski-Gradzinski 2017-06-28 22:09:20 +02:00
parent c1f0faccc8
commit 2eb8be122a
15 changed files with 1180 additions and 7 deletions

View File

@ -1,14 +1,14 @@
`Chain Of Responsibilities`__
=============================
Purpose:
Purpose
--------
To build a chain of objects to handle a call in sequential order. If one
object cannot handle a call, it delegates the call to the next in the
chain and so forth.
Examples:
Examples
---------
- logging framework, where each chain element decides autonomously what
@ -38,16 +38,16 @@ Handler.php
.. literalinclude:: Handler.php
:language: php
:linenos:
Responsible/FastStorage.php
Responsible/SlowStorage.php
.. literalinclude:: Responsible/SlowStorage.php
.. literalinclude:: Responsible/HttpInMemoryCacheHandler.php
:language: php
:linenos:
Responsible/FastStorage.php
Responsible/SlowStorage.php
.. literalinclude:: Responsible/FastStorage.php
.. literalinclude:: Responsible/SlowDatabaseHandler.php
:language: php
:linenos:

View File

@ -47,5 +47,12 @@ CreateOrder.php
Test
----
Tests/StateTest.php
.. literalinclude:: Tests/StateTest.php
:language: php
:linenos:
.. _`GitHub`: https://github.com/domnikl/DesignPatternsPHP/tree/master/Behavioral/State
.. __: http://en.wikipedia.org/wiki/State_pattern

View File

@ -0,0 +1,99 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-29 21:17+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:2
msgid "`Chain Of Responsibilities`__"
msgstr "`Łańcuch zobowiązań <https://pl.wikipedia.org/wiki/%C5%81a%C5%84cuch_zobowi%C4%85za%C5%84_(wzorzec_projektowy)>`_ (`Chain Of Responsibilities`__)"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:7
msgid ""
"To build a chain of objects to handle a call in sequential order. If one "
"object cannot handle a call, it delegates the call to the next in the chain "
"and so forth."
msgstr ""
"Zbudowanie łańcucha obiektów przetwarzających żądanie w sposób sekwencyjny. "
"Jeżeli jeden obiekt nie może obsłużyć żądania, przekazuje je do następnego w łańcuchu."
#: ../../Behavioral/ChainOfResponsibilities/README.rst:12
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:14
msgid ""
"logging framework, where each chain element decides autonomously what to do "
"with a log message"
msgstr ""
"Framework do zapisywania logów, gdzie każdy obiekt z łańcucha odpowiedzialności decyduje "
"co zrobić z danym wpisem."
#: ../../Behavioral/ChainOfResponsibilities/README.rst:16
msgid "a Spam filter"
msgstr "filtr antyspamowy"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:17
msgid ""
"Caching: first object is an instance of e.g. a Memcached Interface, if that "
"\"misses\" it delegates the call to the database interface"
msgstr ""
"Zapis w pamięci podręcznej (caching): pierwszy obiekt jest na przykład instancją implementującą interfejs Memcached - "
"jeżeli nie może zapisać w pamięci podręcznej żądania, wtedy przekazuje je do obiektu implementującego interfejs zapisu w bazie danych."
#: ../../Behavioral/ChainOfResponsibilities/README.rst:19
msgid ""
"Yii Framework: CFilterChain is a chain of controller action filters. the "
"executing point is passed from one filter to the next along the chain, and "
"only if all filters say \"yes\", the action can be invoked at last."
msgstr ""
"Yii Framework: CFilterChain jest łańcuchem filtrów dla danej akcji kontrolera. "
"Wszystkie filtry są wykonywane po kolei w łańcuchu i dopiero jak wszystkie "
"zwrócą pozytywny wynik finalna akcja zostanie uruchomiona."
#: ../../Behavioral/ChainOfResponsibilities/README.rst:25
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:32
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:34
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/ChainOfResponsibilities/README.rst:36
msgid "Request.php"
msgstr "Request.php"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:42
msgid "Handler.php"
msgstr "Handler.php"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:48
msgid "Responsible/SlowStorage.php"
msgstr "Responsible/SlowStorage.php"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:54
msgid "Responsible/FastStorage.php"
msgstr "Responsible/FastStorage.php"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:61
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/ChainOfResponsibilities/README.rst:63
msgid "Tests/ChainTest.php"
msgstr "Tests/ChainTest.php"

View File

@ -0,0 +1,111 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-29 21:16+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Command/README.rst:2
msgid "`Command`__"
msgstr "`Polecenie <https://pl.wikipedia.org/wiki/Polecenie_(wzorzec_projektowy)>`_ (`Command`__)"
#: ../../Behavioral/Command/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Command/README.rst:7
msgid "To encapsulate invocation and decoupling."
msgstr "Pozwala wydzielić wykonanie określonej czynności w postaci obiektu."
#: ../../Behavioral/Command/README.rst:9
msgid ""
"We have an Invoker and a Receiver. This pattern uses a \"Command\" to "
"delegate the method call against the Receiver and presents the same method "
"\"execute\". Therefore, the Invoker just knows to call \"execute\" to "
"process the Command of the client. The Receiver is decoupled from the "
"Invoker."
msgstr ""
"Wprowadzamy trzy obiekty: Nadawcę (ang. `Invoker`), Odbiorcę (ang. `Receiver`) i Polecenie (ang. `Command`). "
"Używamy obiektu Polecenia do wykonywania działań na odbiorcy. Dodatkowo wprowadzamy w obiekcie Polecenia "
"metodę `execute()`. Dzięki temu Nadawca wywołuje zawsze tą samą metodę niezależnie od Polecenia, aby "
"przetworzyć żądanie klienta. Nadawca i Odbiorca nie są ze sobą połączeni."
#: ../../Behavioral/Command/README.rst:15
msgid ""
"The second aspect of this pattern is the undo(), which undoes the method "
"execute(). Command can also be aggregated to combine more complex commands "
"with minimum copy-paste and relying on composition over inheritance."
msgstr ""
"Drugi aspektem tego wzorca jest metoda `undo()`, która pozwala cofnąć wywołanie metody `execute()`. "
"Polecenie może agregować inne Polecenia, aby wykonywać bardziej złożone operacje. Dzięki temu minimalizujemy "
"kopiowanie kodu z innych klas i opieramy się bardziej na kompozycji niż dziedziczeniu. "
#: ../../Behavioral/Command/README.rst:21
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Command/README.rst:23
msgid ""
"A text editor : all events are Command which can be undone, stacked and "
"saved."
msgstr ""
"Edytor tekstu: wszystkie zdarzenia (ang. `events`) są Poleceniami, które można cofnąć `undo()`, odłożyć na stosie "
"i zapisać."
#: ../../Behavioral/Command/README.rst:25
msgid ""
"Symfony2: SF2 Commands that can be run from the CLI are built with just the "
"Command pattern in mind"
msgstr ""
"Symfony2: Polecenie w Symfony2, które można uruchomić z poziomu konsoli (CLI - ang. `Command Line Interface`) zostały oparte na wzorcu projektowym Polecenie."
#: ../../Behavioral/Command/README.rst:27
msgid ""
"big CLI tools use subcommands to distribute various tasks and pack them in "
"\"modules\", each of these can be implemented with the Command pattern (e.g."
" vagrant)"
msgstr ""
"Rozbudowane narzędzia CLI używają Podpoleceń do rozdzielenia różnych zadań "
"i pozwalają na łączenie ich w moduły. Każdy taki moduł może zostać zaimplementowany przy pomocy wzorca Polecenie (np. Vagrant)."
#: ../../Behavioral/Command/README.rst:32
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Command/README.rst:39
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Command/README.rst:41
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Command/README.rst:43
msgid "CommandInterface.php"
msgstr "CommandInterface.php"
#: ../../Behavioral/Command/README.rst:49
msgid "HelloCommand.php"
msgstr "HelloCommand.php"
#: ../../Behavioral/Command/README.rst:55
msgid "Receiver.php"
msgstr "Receiver.php"
#: ../../Behavioral/Command/README.rst:61
msgid "Invoker.php"
msgstr "Invoker.php"
#: ../../Behavioral/Command/README.rst:68
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Command/README.rst:70
msgid "Tests/CommandTest.php"
msgstr "Tests/CommandTest.php"

View File

@ -0,0 +1,89 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-29 21:47+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Iterator/README.rst:2
msgid "`Iterator`__"
msgstr "`Iterator <https://pl.wikipedia.org/wiki/Iterator>`_ (`Iterator`__)"
#: ../../Behavioral/Iterator/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Iterator/README.rst:7
msgid "To make an object iterable and to make it appear like a collection of objects."
msgstr ""
"Umożliwienie sekwencyjnego dostępu do elementów zawartych w innym obiekcie, zwykle kontenerze lub liście."
#: ../../Behavioral/Iterator/README.rst:11
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Iterator/README.rst:13
msgid ""
"to process a file line by line by just running over all lines (which have an"
" object representation) for a file (which of course is an object, too)"
msgstr ""
"Procesowanie pliku linia po linii. Zakładamy, że zarówno plik jak i każda linijka z tego pliku "
"to osobny obiekt. Możemy w ten sposób iterować po wszystkich liniach (będących obiektami) danego pliku."
#: ../../Behavioral/Iterator/README.rst:18
msgid "Note"
msgstr "Uwagi"
#: ../../Behavioral/Iterator/README.rst:20
msgid ""
"Standard PHP Library (SPL) defines an interface Iterator which is best "
"suited for this! Often you would want to implement the Countable interface "
"too, to allow ``count($object)`` on your iterable object"
msgstr ""
"Biblioteka SPL (Standard PHP Library) dostępna w PHP posiada interfejs Iterator, "
"który świetnie nadaje się do tego zadania. Bardzo często klasa, która implementuje interfejs Iterator "
"implementuje również interfejs Countable (również z biblioteki SPL), który pozwala policzyć liczbę elementów "
"wywołaniem funkcji ``count($object)``."
#: ../../Behavioral/Iterator/README.rst:25
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Iterator/README.rst:32
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Iterator/README.rst:34
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Iterator/README.rst:36
msgid "Book.php"
msgstr "Book.php"
#: ../../Behavioral/Iterator/README.rst:42
msgid "BookList.php"
msgstr "BookList.php"
#: ../../Behavioral/Iterator/README.rst:48
msgid "BookListIterator.php"
msgstr "BookListIterator.php"
#: ../../Behavioral/Iterator/README.rst:54
msgid "BookListReverseIterator.php"
msgstr "BookListReverseIterator.php"
#: ../../Behavioral/Iterator/README.rst:61
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Iterator/README.rst:63
msgid "Tests/IteratorTest.php"
msgstr "Tests/IteratorTest.php"

View File

@ -0,0 +1,88 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-29 22:18+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
"Language-Team: \n"
"X-Generator: Poedit 1.8.1\n"
#: ../../Behavioral/Mediator/README.rst:2
msgid "`Mediator`__"
msgstr "`Mediator <https://pl.wikipedia.org/wiki/Mediator_(wzorzec_projektowy)>`_ (`Mediator`__)"
#: ../../Behavioral/Mediator/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Mediator/README.rst:7
msgid ""
"This pattern provides an easy way to decouple many components working "
"together. It is a good alternative to Observer IF you have a \"central "
"intelligence\", like a controller (but not in the sense of the MVC)."
msgstr ""
"Wzorzec Mediatora umożliwia zmniejszenie liczby powiązań między różnymi klasami, "
"poprzez utworzenie <ediatora będącego jedyną klasą, która dokładnie zna metody "
"wszystkich innych klas, którymi zarządza. Nie muszą one nic o sobie wiedzieć, "
"przekazują jedynie polecenia Mediatorowi, a ten rozsyła je dalej do odpowiednich obiektów. "
"Mediator jest dobrą alternatywą dla wzorca Obserwator w sytuacji, kiedy istnieje centralne "
"miejsce zawierające logikę, jak na przykład kontroler, ale nie w rozumieniu wzorca MVC."
#: ../../Behavioral/Mediator/README.rst:11
msgid ""
"All components (called Colleague) are only coupled to the MediatorInterface "
"and it is a good thing because in OOP, one good friend is better than many. "
"This is the key-feature of this pattern."
msgstr ""
"Wszystkie komponenty, nazywane Współpracownikami (ang. `Collegue`) są powiązane tylko z `MediatorInterface`. "
"Jest to kluczowy element tego wzorca."
#: ../../Behavioral/Mediator/README.rst:16
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Mediator/README.rst:23
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Mediator/README.rst:25
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Mediator/README.rst:27
msgid "MediatorInterface.php"
msgstr "MediatorInterface.php"
#: ../../Behavioral/Mediator/README.rst:33
msgid "Mediator.php"
msgstr "Mediator.php"
#: ../../Behavioral/Mediator/README.rst:39
msgid "Colleague.php"
msgstr "Colleague.php"
#: ../../Behavioral/Mediator/README.rst:45
msgid "Subsystem/Client.php"
msgstr "Subsystem/Client.php"
#: ../../Behavioral/Mediator/README.rst:51
msgid "Subsystem/Database.php"
msgstr "Subsystem/Database.php"
#: ../../Behavioral/Mediator/README.rst:57
msgid "Subsystem/Server.php"
msgstr "Subsystem/Server.php"
#: ../../Behavioral/Mediator/README.rst:64
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Mediator/README.rst:66
msgid "Tests/MediatorTest.php"
msgstr "Tests/MediatorTest.php"

View File

@ -0,0 +1,137 @@
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-03 23:59+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.3.4\n"
#: ../../Behavioral/Memento/README.rst:2
msgid "`Memento`__"
msgstr "`Pamiątka <https://pl.wikipedia.org/wiki/Pami%C4%85tka_(wzorzec_projektowy)>`_ (`Memento`__)"
#: ../../Behavioral/Memento/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Memento/README.rst:7
msgid ""
"It provides the ability to restore an object to it's previous state (undo "
"via rollback) or to gain access to state of the object, without revealing "
"it's implementation (i.e., the object is not required to have a function "
"to return the current state)."
msgstr ""
"Implementacja tego wzorca umożliwia przywrócenie obiektu do poprzedniego stanu (poprzez wycofanie zmian) "
"lub uzyskaniu dostępu do stanu obiektu bez wiedzy na temat wewnętrznej implementacji obiektu "
"(w sytuacji, gdy na przykład obiekt nie posiada metody pozwalającej na zwrócenie jego stanu)."
#: ../../Behavioral/Memento/README.rst:12
msgid ""
"The memento pattern is implemented with three objects: the Originator, a "
"Caretaker and a Memento."
msgstr ""
"Implementacja wzorca Pamiątki składa się z trzech obiektów: Twórca, Opiekun i Pamiątki."
#: ../../Behavioral/Memento/README.rst:15
msgid ""
"Memento an object that *contains a concrete unique snapshot of state* "
"of any object or resource: string, number, array, an instance of class "
"and so on. The uniqueness in this case does not imply the prohibition "
"existence of similar states in different snapshots. That means the state "
"can be extracted as the independent clone. Any object stored in the "
"Memento should be *a full copy of the original object rather than a "
"reference* to the original object. The Memento object is a \"opaque "
"object\" (the object that no one can or should change)."
msgstr ""
"Pamiątka (ang. `Memento`) - obiekt, który zawiera migawkę (ang. `snapshot`) pełnej, unikatowej informacji o stanie obiektu "
"lub zasobu: napisu, liczby, tablicy lub instancji obiektu. Unikatowość w tym przypadku nie zabrania "
"istnienia innych migawek podobnego stanu danego obiektu. Oznacza to, że stan może zostać pobrany z obiektu *Memento* "
"jako niezależny klon. Jeżeli obiekt *Memento* przechowuje inny obiekt, powinien on być kopią pierwotnego obiektu, a "
"nie referencją na niego. Obiekt *Memento* nie jest przezroczysty (`opaque object <https://en.wikipedia.org/wiki/Opaque_data_type>`_), "
"co oznacza, że nikt tego obiektu nie może lub nie powinien zmieniać."
#: ../../Behavioral/Memento/README.rst:24
msgid ""
"Originator it is an object that contains the *actual state of an "
"external object is strictly specified type*. Originator is able to create"
" a unique copy of this state and return it wrapped in a Memento. The "
"Originator does not know the history of changes. You can set a concrete "
"state to Originator from the outside, which will be considered as actual."
" The Originator must make sure that given state corresponds the allowed "
"type of object. Originator may (but not should) have any methods, but "
"they *they can't make changes to the saved object state*."
msgstr ""
"Twórca (ang. `Originator`) - obiekt, który zawiera *faktyczny stan zewnętrznego obiektu o określonym typie*. "
"Twórca jest w stanie stworzyć kopię stanu zewnętrznego obiektu i zwrócić go opakowanego w Pamiątkę. "
"Twórca nie posiada informacji o historii zmian, natomiast można mu przekazać stan jaki ma zostać ustawiony "
"zewnętrznemu obiektowi, który będzie traktowany jako aktualny. Twórca jest odpowiedzialny za sprawdzenie czy przekazany "
"stan może zostać ustawiony zewnętrznemu obiektowi, sprawdzając jego typ. Twórca może posiadać, choć nie powinien, dodatkowe "
"metody, ale te *nie mogą zmieniać stanu zewnętrznego obiektu*. Może je jedynie przywrócić z Pamiątki."
#: ../../Behavioral/Memento/README.rst:33
msgid ""
"Caretaker *controls the states history*. He may make changes to an "
"object; take a decision to save the state of an external object in the "
"Originator; ask from the Originator snapshot of the current state; or set"
" the Originator state to equivalence with some snapshot from history."
msgstr ""
"Opiekun (ang. `Caretaker`) - obiekt, który zarządza historią stanów obiektu. Może wprowadzać zmiany w obiekcie, "
"zapisywać historię zewnętrznego obiektu poprzez Twórcę, prosić Twórcę o stworzenie Pamiątki (migawki stanu zewnętrznego obiektu) "
"lub prosić Twórcę o ustawienie stanu zewnętrznego obiektu poprzez wskazanie Pamiątki z zachowanej historii."
#: ../../Behavioral/Memento/README.rst:39
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Memento/README.rst:41
msgid "The seed of a pseudorandom number generator"
msgstr ""
"`Ziarno (ang. seed) <https://en.wikipedia.org/wiki/Random_seed>`_ generatora liczb pseudolosowych."
#: ../../Behavioral/Memento/README.rst:42
msgid "The state in a finite state machine"
msgstr "Stan `automatu skończonego <https://pl.wikipedia.org/wiki/Automat_sko%C5%84czony>`_."
#: ../../Behavioral/Memento/README.rst:43
msgid ""
"Control for intermediate states of `ORM Model "
"<http://en.wikipedia.org/wiki/Object-relational_mapping>`_ before saving"
msgstr ""
"Kontrola stanów pośrednich `modelu ORM <https://pl.wikipedia.org/wiki/Mapowanie_obiektowo-relacyjne>`_."
#: ../../Behavioral/Memento/README.rst:46
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Memento/README.rst:53
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Memento/README.rst:55
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Memento/README.rst:57
msgid "Memento.php"
msgstr "Memento.php"
#: ../../Behavioral/Memento/README.rst:63
msgid "Originator.php"
msgstr "Originator.php"
#: ../../Behavioral/Memento/README.rst:69
msgid "Caretaker.php"
msgstr "Caretaker.php"
#: ../../Behavioral/Memento/README.rst:76
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Memento/README.rst:78
msgid "Tests/MementoTest.php"
msgstr "Tests/MementoTest.php"

View File

@ -0,0 +1,109 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 14:24+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/NullObject/README.rst:2
msgid "`Null Object`__"
msgstr "`Pusty obiekt <https://pl.wikipedia.org/wiki/Pusty_Obiekt_(wzorzec_projektowy)>`_ (`Null Object`__)"
#: ../../Behavioral/NullObject/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/NullObject/README.rst:7
msgid ""
"NullObject is not a GoF design pattern but a schema which appears "
"frequently enough to be considered a pattern. It has the following benefits:"
msgstr ""
"Pusty Obiekt nie jest wzrorcem zaproponowanym przez Gang Czterech, "
"niemniej jednak jest na tyle popularny, że może być uznany za wzorzec. Użycie tego wzorca niesie następujące korzyści: "
#: ../../Behavioral/NullObject/README.rst:11
msgid "Client code is simplified"
msgstr "uproszcza kodu programu,"
#: ../../Behavioral/NullObject/README.rst:12
msgid "Reduces the chance of null pointer exceptions"
msgstr ""
"zmniejsza prawdopodobieństwo wystąpienia błędu *null pointer exception*,"
#: ../../Behavioral/NullObject/README.rst:13
msgid "Fewer conditionals require less test cases"
msgstr "eliminuje zbędne lub powtarzające się warunki, które wpływają na zmniejszenie liczby przypadków testowych,"
#: ../../Behavioral/NullObject/README.rst:15
msgid ""
"Methods that return an object or null should instead return an object or "
"``NullObject``. ``NullObject``\\ s simplify boilerplate code such as ``if "
"(!is_null($obj)) { $obj->callSomething(); }`` to just "
"``$obj->callSomething();`` by eliminating the conditional check in client "
"code."
msgstr ""
"Metoda, która zwraca obiekt lub null powinna zwracać obiekt lub Obiekt Pusty (``NullObject``). "
"``NullObject`` w znaczący sposób upraszcza kod z postaci ``if (!is_null($obj)) { $obj->callSomething(); }`` "
"do ``$obj->callSomething();`` poprzez eliminację warunku w kodzie klienta."
#: ../../Behavioral/NullObject/README.rst:22
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/NullObject/README.rst:24
msgid "Symfony2: null logger of profiler"
msgstr "Symfony2: `NullLogger <http://api.symfony.com/2.8/Symfony/Component/HttpKernel/Log/NullLogger.html>`_ w ramach profilera"
#: ../../Behavioral/NullObject/README.rst:25
msgid "Symfony2: null output in Symfony/Console"
msgstr "Symfony2: `NullOutput <http://api.symfony.com/2.8/Symfony/Component/Console/Output/NullOutput.html>`_ w ramach komponentu Symfony/Coonsole"
#: ../../Behavioral/NullObject/README.rst:26
msgid "null handler in a Chain of Responsibilities pattern"
msgstr "Obsługa NULL we wzrocu Łańcuch zobowiązań"
#: ../../Behavioral/NullObject/README.rst:27
msgid "null command in a Command pattern"
msgstr "Polecenie NULL we wzorcu Polecenie"
#: ../../Behavioral/NullObject/README.rst:30
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/NullObject/README.rst:37
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/NullObject/README.rst:39
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/NullObject/README.rst:41
msgid "Service.php"
msgstr "Service.php"
#: ../../Behavioral/NullObject/README.rst:47
msgid "LoggerInterface.php"
msgstr "LoggerInterface.php"
#: ../../Behavioral/NullObject/README.rst:53
msgid "PrintLogger.php"
msgstr "PrintLogger.php"
#: ../../Behavioral/NullObject/README.rst:59
msgid "NullLogger.php"
msgstr "NullLogger.php"
#: ../../Behavioral/NullObject/README.rst:66
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/NullObject/README.rst:68
msgid "Tests/LoggerTest.php"
msgstr "Tests/LoggerTest.php"

View File

@ -0,0 +1,82 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 05:20+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Observer/README.rst:2
msgid "`Observer`__"
msgstr "`Obserwator <https://pl.wikipedia.org/wiki/Obserwator_(wzorzec_projektowy)>`_ (`Observer`__)"
#: ../../Behavioral/Observer/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Observer/README.rst:7
msgid ""
"To implement a publish/subscribe behaviour to an object, whenever a "
"\"Subject\" object changes its state, the attached \"Observers\" will be "
"notified. It is used to shorten the amount of coupled objects and uses loose"
" coupling instead."
msgstr ""
"Pozwala na implementację zachowania rozgłaszania i konsumowania informacji o zmianach w danym obiekcie. "
"Wzorzec Obserwator składa się z Obiektu Obserwowanego (ang. `subject`, `observable`) i Obserwatora (ang. `listener`, `observer`). "
"Za każdym razem, kiedy Obiekt Obserwowany zmienia swój stan, wszyscy obserwujący go Obserwatorzy są informowani o zmianie. "
"Takie działa pozwala na zmniejszenie powiązań pomiędzy obiektami. Zamiast ścisłego wiązania używane jest luźne wiązanie."
#: ../../Behavioral/Observer/README.rst:13
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Observer/README.rst:15
msgid ""
"a message queue system is observed to show the progress of a job in a GUI"
msgstr ""
"System kolejkowania wiadomości jest obserwowany, aby wyświetlić postęp w realizacji danego zadania w GUI."
#: ../../Behavioral/Observer/README.rst:19
msgid "Note"
msgstr "Uwaga"
#: ../../Behavioral/Observer/README.rst:21
msgid ""
"PHP already defines two interfaces that can help to implement this pattern: "
"SplObserver and SplSubject."
msgstr ""
"W PHP są dostępne dwa interfejsy, dostępne w bibliotece SPL: *SplSubject* i *SplObserver*, które pozwalają "
"zaimplementować wzorzec Obserwatora."
#: ../../Behavioral/Observer/README.rst:25
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Observer/README.rst:32
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Observer/README.rst:34
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Observer/README.rst:36
msgid "User.php"
msgstr "User.php"
#: ../../Behavioral/Observer/README.rst:42
msgid "UserObserver.php"
msgstr "UserObserver.php"
#: ../../Behavioral/Observer/README.rst:49
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Observer/README.rst:51
msgid "Tests/ObserverTest.php"
msgstr "Tests/ObserverTest.php"

View File

@ -0,0 +1,27 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-29 21:22+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/README.rst:2
msgid "`Behavioral`__"
msgstr "`Czynnościowe/Operacyjne <https://pl.wikipedia.org/wiki/Wzorzec_projektowy_(informatyka)#Klasyfikacja_podstawowa>`_ (`Behavioral`__)"
#: ../../Behavioral/README.rst:4
msgid ""
"In software engineering, behavioral design patterns are design patterns that"
" identify common communication patterns between objects and realize these "
"patterns. By doing so, these patterns increase flexibility in carrying out "
"this communication."
msgstr ""
"W inżynierii oprogramowania czynnościowe wzorce projektowe to takie, "
"które dotyczą sposobów komunikacji między obiektam i pozwalają zwiększyć jej elastyczność. "
"Określają również odpowiedzialność współpracujących ze sobą obiektów."

View File

@ -0,0 +1,87 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 04:28+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Specification/README.rst:2
msgid "`Specification`__"
msgstr "`Specyfikacja <https://en.wikipedia.org/wiki/Specification_pattern>`_ (`Specification`__)"
#: ../../Behavioral/Specification/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Specification/README.rst:7
msgid ""
"Builds a clear specification of business rules, where objects can be checked"
" against. The composite specification class has one method called "
"``isSatisfiedBy`` that returns either true or false depending on whether the"
" given object satisfies the specification."
msgstr ""
"Pozwala na stworzenie specyfikacji reguł jakie obiekt musi spełnić. Klasa będą specyfikacją reguł biznesowych "
"zawiera jedną metodę ``isSatisfiedBy``, która zwraca *true* lub *false* w zależności od tego czy dany obiekt "
"spełnia wszystkie reguły określone w specyfikacji."
#: ../../Behavioral/Specification/README.rst:13
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Specification/README.rst:15
msgid "`RulerZ <https://github.com/K-Phoen/rulerz>`__"
msgstr "`RulerZ <https://github.com/K-Phoen/rulerz>`__"
#: ../../Behavioral/Specification/README.rst:18
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Specification/README.rst:25
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Specification/README.rst:27
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Specification/README.rst:29
msgid "Item.php"
msgstr "Item.php"
#: ../../Behavioral/Specification/README.rst:35
msgid "SpecificationInterface.php"
msgstr "SpecificationInterface.php"
#: ../../Behavioral/Specification/README.rst:41
msgid "AbstractSpecification.php"
msgstr "AbstractSpecification.php"
#: ../../Behavioral/Specification/README.rst:47
msgid "Either.php"
msgstr "Either.php"
#: ../../Behavioral/Specification/README.rst:53
msgid "PriceSpecification.php"
msgstr "PriceSpecification.php"
#: ../../Behavioral/Specification/README.rst:59
msgid "Plus.php"
msgstr "Plus.php"
#: ../../Behavioral/Specification/README.rst:65
msgid "Not.php"
msgstr "Not.php"
#: ../../Behavioral/Specification/README.rst:72
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Specification/README.rst:74
msgid "Tests/SpecificationTest.php"
msgstr "Tests/SpecificationTest.php"

View File

@ -0,0 +1,65 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 04:40+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/State/README.rst:2
msgid "`State`__"
msgstr "`Stan <https://pl.wikipedia.org/wiki/Stan_(wzorzec_projektowy)>`_ (`State`__)"
#: ../../Behavioral/State/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/State/README.rst:7
msgid ""
"Encapsulate varying behavior for the same routine based on an object's "
"state. This can be a cleaner way for an object to change its behavior at "
"runtime without resorting to large monolithic conditional statements."
msgstr ""
"Pozwala kapsułkować różne zachowania obiektu w ramach tego same procesu, "
"w zależności od stanu w jakim obiekt aktualnie się znajduje. Dzięki temu nie musimy używać wielu instrukcji warunkowych."
#: ../../Behavioral/State/README.rst:12
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/State/README.rst:19
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/State/README.rst:21
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/State/README.rst:23
msgid "OrderController.php"
msgstr "OrderController.php"
#: ../../Behavioral/State/README.rst:29
msgid "OrderFactory.php"
msgstr "OrderFactory.php"
#: ../../Behavioral/State/README.rst:35
msgid "OrderInterface.php"
msgstr "OrderInterface.php"
#: ../../Behavioral/State/README.rst:41
msgid "ShippingOrder.php"
msgstr "ShippingOrder.php"
#: ../../Behavioral/State/README.rst:47
msgid "CreateOrder.php"
msgstr "CreateOrder.php"
#: ../../Behavioral/State/README.rst:54
msgid "Test"
msgstr "Testy"

View File

@ -0,0 +1,97 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 05:25+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Strategy/README.rst:2
msgid "`Strategy`__"
msgstr "`Strategia <https://pl.wikipedia.org/wiki/Strategia_(wzorzec_projektowy)>`_ (`Strategy`__)"
#: ../../Behavioral/Strategy/README.rst:5
msgid "Terminology:"
msgstr "Terminologia"
#: ../../Behavioral/Strategy/README.rst:7
msgid "Context"
msgstr "Kontekst - ang. `Context`"
#: ../../Behavioral/Strategy/README.rst:8
msgid "Strategy"
msgstr "Strategia - ang. `Strategy`"
#: ../../Behavioral/Strategy/README.rst:9
msgid "Concrete Strategy"
msgstr "Konkretna Strategia - ang. `Concrete Strategy`"
#: ../../Behavioral/Strategy/README.rst:12
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Strategy/README.rst:14
msgid ""
"To separate strategies and to enable fast switching between them. Also this "
"pattern is a good alternative to inheritance (instead of having an abstract "
"class that is extended)."
msgstr ""
"Wzorzec projektowy Strategii pozwala definiować wymienne algorytmy i kapsułkować je w klasach. Dzięki temu "
"możemy łatwo przełączać się między algorytmami. Ten wzorzec jest również dobrą alternatywą dla dziedziczenia - zamiast "
"dziedziczenia po klasie abstrakcyjnej kolejne klasy implementują interfejs strategii."
#: ../../Behavioral/Strategy/README.rst:19
msgid "Examples"
msgstr "Przykłady"
#: ../../Behavioral/Strategy/README.rst:21
msgid "sorting a list of objects, one strategy by date, the other by id"
msgstr ""
"Sortowanie listy obiektów - jedną strategią może być sortowanie po dacie, drugą po id."
#: ../../Behavioral/Strategy/README.rst:22
msgid ""
"simplify unit testing: e.g. switching between file and in-memory storage"
msgstr ""
"Uproszczenie testów jednostkowych, na przykład poprzez zmianę miejsca przechowywania danych: w pliku lub w pamięci."
#: ../../Behavioral/Strategy/README.rst:26
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Strategy/README.rst:33
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Strategy/README.rst:35
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Strategy/README.rst:37
msgid "ObjectCollection.php"
msgstr "ObjectCollection.php"
#: ../../Behavioral/Strategy/README.rst:43
msgid "ComparatorInterface.php"
msgstr "ComparatorInterface.php"
#: ../../Behavioral/Strategy/README.rst:49
msgid "DateComparator.php"
msgstr "DateComparator.php"
#: ../../Behavioral/Strategy/README.rst:55
msgid "IdComparator.php"
msgstr "IdComparator.php"
#: ../../Behavioral/Strategy/README.rst:62
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Strategy/README.rst:64
msgid "Tests/StrategyTest.php"
msgstr "Tests/StrategyTest.php"

View File

@ -0,0 +1,95 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 18:41+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
"Language-Team: \n"
"X-Generator: Poedit 1.8.1\n"
#: ../../Behavioral/TemplateMethod/README.rst:2
msgid "`Template Method`__"
msgstr "`Metoda szablonowa <https://pl.wikipedia.org/wiki/Metoda_szablonowa_(wzorzec_projektowy)>`_ (`Template Method`__)"
#: ../../Behavioral/TemplateMethod/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/TemplateMethod/README.rst:7
msgid "Template Method is a behavioral design pattern."
msgstr "Metoda szablonowa jest czynnościowym wzorcem projektowym."
#: ../../Behavioral/TemplateMethod/README.rst:9
msgid ""
"Perhaps you have encountered it many times already. The idea is to let "
"subclasses of this abstract template \"finish\" the behavior of an "
"algorithm."
msgstr ""
"Prawdopodobnie spotkałeś się z tym wzorcem wielokrotnie. Jego idea opiera się na implementacji w klasie pochodnej "
"metody z klasy rodzica zdefiniowanej jako abstrakcyjna i tym samym dokończenie działania algorytmu. "
#: ../../Behavioral/TemplateMethod/README.rst:13
msgid ""
"A.k.a the \"Hollywood principle\": \"Don't call us, we call you.\" This "
"class is not called by subclasses but the inverse. How? With abstraction of "
"course."
msgstr ""
"Jak w Hollywoodzkim powiedzeniu \"Nie dzwoń do nas, my zadzwonimy do Ciebie\" klasa zawierająca metodę szablonową "
"nie jest instancjonowana, tylko klasa, która po niej dziedziczy. Jest to możliwe dzięki abstrakcji. W klasie rodzica "
"znajduje się metoda, która wywołuje zaimplementowane metody (w klasie rodzica oznaczone jako abstrakcyjne)."
#: ../../Behavioral/TemplateMethod/README.rst:17
msgid ""
"In other words, this is a skeleton of algorithm, well-suited for framework "
"libraries. The user has just to implement one method and the superclass do "
"the job."
msgstr ""
"Innymi słowy, klasa zawierająca metodę szablonową jest szkieletem algorytmu. To rozwiązanie świetnie pasuje do "
"różnego rodzaju frameworków. Programista korzystający z takiej klasy musi zaimplementować tylko metodę szablonową "
"a reszta jest realizowana przez klasę rodzica. "
#: ../../Behavioral/TemplateMethod/README.rst:21
msgid ""
"It is an easy way to decouple concrete classes and reduce copy-paste, "
"that's why you'll find it everywhere."
msgstr ""
"Jest to prosty sposób na rozdzielenie konkretnych klas i zredukowanie powielonych fragmentów kodu metodą kopiuj-wklej. "
"Jest to główny powód, dla którego takie podejście znajdziesz w wielu miejscach."
#: ../../Behavioral/TemplateMethod/README.rst:25
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/TemplateMethod/README.rst:32
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/TemplateMethod/README.rst:34
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/TemplateMethod/README.rst:36
msgid "Journey.php"
msgstr "Journey.php"
#: ../../Behavioral/TemplateMethod/README.rst:42
msgid "BeachJourney.php"
msgstr "BeachJourney.php"
#: ../../Behavioral/TemplateMethod/README.rst:48
msgid "CityJourney.php"
msgstr "CityJourney.php"
#: ../../Behavioral/TemplateMethod/README.rst:55
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/TemplateMethod/README.rst:57
msgid "Tests/JourneyTest.php"
msgstr "Tests/JourneyTest.php"

View File

@ -0,0 +1,80 @@
#
msgid ""
msgstr ""
"Project-Id-Version: DesignPatternsPHP 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-29 12:18+0200\n"
"PO-Revision-Date: 2015-05-30 14:44+0300\n"
"Last-Translator: Piotr Grabski-Gradzinski <piotr.gradzinski@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl\n"
#: ../../Behavioral/Visitor/README.rst:2
msgid "`Visitor`__"
msgstr "`Odwiedzający <https://pl.wikipedia.org/wiki/Odwiedzaj%C4%85cy>`_ (`Visitor`__)"
#: ../../Behavioral/Visitor/README.rst:5
msgid "Purpose"
msgstr "Przeznaczenie"
#: ../../Behavioral/Visitor/README.rst:7
msgid ""
"The Visitor Pattern lets you outsource operations on objects to other "
"objects. The main reason to do this is to keep a separation of concerns. But"
" classes have to define a contract to allow visitors (the ``Role::accept`` "
"method in the example)."
msgstr ""
"Wzorzec Odwiedzającego pozwala wydzielić wykonywanie operacji na obiektach do innych obiektów. "
"Głównym powodem stosowania tego wzorca jest podział odpowiedzialności (ang. `separation of concerns <https://en.wikipedia.org/wiki/Separation_of_concerns>`_). Poszczególne klasy muszą definiować kontrakt pozwalający Wizytatorowi na dostęp "
"(w poniższym przykładzie za pomocą metody ``Role::accept``)"
#: ../../Behavioral/Visitor/README.rst:12
msgid ""
"The contract is an abstract class but you can have also a clean interface. "
"In that case, each Visitor has to choose itself which method to invoke on "
"the visitor."
msgstr ""
"W poniższym przykładzie kontrakt jest klasą abstrakcyjną, ale może to być również interfejs. "
"Tworząc taki kontrakt obiekt odwiedzany musi zdecydować jaką metodę wywołać na Wizytatorze. "
#: ../../Behavioral/Visitor/README.rst:17
msgid "UML Diagram"
msgstr "Diagram UML"
#: ../../Behavioral/Visitor/README.rst:24
msgid "Code"
msgstr "Kod"
#: ../../Behavioral/Visitor/README.rst:26
msgid "You can also find this code on `GitHub`_"
msgstr "Ten kod znajdziesz również na `GitHub`_."
#: ../../Behavioral/Visitor/README.rst:28
msgid "RoleVisitorInterface.php"
msgstr "RoleVisitorInterface.php"
#: ../../Behavioral/Visitor/README.rst:34
msgid "RolePrintVisitor.php"
msgstr "RolePrintVisitor.php"
#: ../../Behavioral/Visitor/README.rst:40
msgid "Role.php"
msgstr "Role.php"
#: ../../Behavioral/Visitor/README.rst:46
msgid "User.php"
msgstr "User.php"
#: ../../Behavioral/Visitor/README.rst:52
msgid "Group.php"
msgstr "Group.php"
#: ../../Behavioral/Visitor/README.rst:59
msgid "Test"
msgstr "Testy"
#: ../../Behavioral/Visitor/README.rst:61
msgid "Tests/VisitorTest.php"
msgstr "Tests/VisitorTest.php"