# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2015, Dominik Liebler and contributors
# This file is distributed under the same license as the DesignPatternsPHP
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2016.
#
#, fuzzy
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: Eugene Glotov <kivagant@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 "`Хранитель <https://ru.wikipedia.org/wiki/Хранитель_(шаблон_проектирования)>`_ (`Memento`__)"

#: ../../Behavioral/Memento/README.rst:5
msgid "Purpose"
msgstr "Назначение"

#: ../../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"
" functional for return the current state)."
msgstr ""
"Шаблон предоставляет возможность восстановить объект в его предыдущем состоянии "
"(отменить действие посредством отката к предыдущему состоянию) или получить "
"доступ к состоянию объекта, не раскрывая его реализацию (т.е. сам "
"объект не обязан иметь функциональность для возврата текущего состояния)."

#: ../../Behavioral/Memento/README.rst:12
msgid ""
"The memento pattern is implemented with three objects: the Originator, a "
"Caretaker and a Memento."
msgstr ""
"Шаблон Хранитель реализуется тремя объектами: \"Создателем\" (originator), "
"\"Опекуном\" (caretaker) и \"Хранитель\" (memento)."

#: ../../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 ""
"Хранитель - это объект, который *хранит конкретный снимок состояния* "
"некоторого объекта или ресурса: строки, числа, массива, экземпляра "
"класса и так далее. Уникальность в данном случае подразумевает не запрет на "
"существование одинаковых состояний в разных снимках, а то, что состояние "
"можно извлечь в виде независимой копии. Любой объект, сохраняемый в "
"Хранителе, должен быть *полной копией исходного объекта, а не ссылкой* на "
"исходный объект. Сам объект Хранитель является «непрозрачным объектом» (тот, "
"который никто не может и не должен изменять)."

#: ../../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 ""
"Создатель — это объект, который *содержит в себе актуальное состояние внешнего "
"объекта строго заданного типа* и умеет создавать уникальную копию этого "
"состояния, возвращая её, обёрнутую в объект Хранителя. Создатель не знает истории "
"изменений. Создателю можно принудительно установить конкретное состояние "
"извне, которое будет считаться актуальным. Создатель должен позаботиться о том, "
"чтобы это состояние соответствовало типу объекта, с которым ему разрешено "
"работать. Создатель может (но не обязан) иметь любые методы, но они *не могут "
"менять сохранённое состояние объекта*."

#: ../../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 ""
"Опекун *управляет историей снимков состояний*. Он может вносить изменения в "
"объект, принимать решение о сохранении состояния внешнего объекта в Создателе, "
"запрашивать от Создателя снимок текущего состояния, или привести состояние "
"Создателя в соответствие с состоянием какого-то снимка из истории."

#: ../../Behavioral/Memento/README.rst:39
msgid "Examples"
msgstr "Примеры"

#: ../../Behavioral/Memento/README.rst:41
msgid "The seed of a pseudorandom number generator"
msgstr ""
"`Зерно <http://en.wikipedia.org/wiki/Random_seed>`_ генератора псевдослучайных "
"чисел."

#: ../../Behavioral/Memento/README.rst:42
msgid "The state in a finite state machine"
msgstr "Состояние конечного автомата"

#: ../../Behavioral/Memento/README.rst:43
msgid ""
"Control for intermediate states of `ORM Model "
"<http://en.wikipedia.org/wiki/Object-relational_mapping>`_ before saving"
msgstr ""
"Контроль промежуточных состояний модели в `ORM "
"<http://en.wikipedia.org/wiki/Object-relational_mapping>`_ перед сохранением"

#: ../../Behavioral/Memento/README.rst:46
msgid "UML Diagram"
msgstr "UML Диаграмма"

#: ../../Behavioral/Memento/README.rst:53
msgid "Code"
msgstr "Код"

#: ../../Behavioral/Memento/README.rst:55
msgid "You can also find this code on `GitHub`_"
msgstr "Вы можете найти этот код на `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 "Тест"

#: ../../Behavioral/Memento/README.rst:78
msgid "Tests/MementoTest.php"
msgstr "Tests/MementoTest.php"
