Memento. Note: not equals to English version!

This commit is contained in:
Евгений Глотов 2015-05-30 00:04:55 +03:00
parent 0ebafc5eaa
commit 5d11bc5a87
2 changed files with 49 additions and 19 deletions

View File

@ -4,9 +4,9 @@
Purpose
-------
It provides the ability to restore an object to its previous state (undo
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
its implementation (ie, the object is not required to have a functional
it's implementation (i.e., the object is not required to have a functional
for return the current state).
The memento pattern is implemented with three objects: the Originator, a
@ -14,7 +14,7 @@ Caretaker and a Memento.
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 not imply the prohibition existence of similar
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

View File

@ -1,29 +1,32 @@
#
#
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: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"PO-Revision-Date: 2015-05-30 01:42+0300\n"
"Last-Translator: Eugene Glotov <kivagant@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ru\n"
#: ../../Behavioral/Memento/README.rst:2
msgid "`Memento`__"
msgstr ""
msgstr "`Хранитель`__"
#: ../../Behavioral/Memento/README.rst:5
msgid "Purpose"
msgstr ""
msgstr "Назначение"
#: ../../Behavioral/Memento/README.rst:7
msgid ""
"Provide the ability to restore an object to its previous state (undo via "
"rollback)."
msgstr ""
"Предоставляет возможность восстановить объект в его предыдущем состоянии или "
"получить доступ к состоянию объекта, не раскрывая его реализацию (т.е. сам "
"объект не обязан иметь функционал возврата текущего состояния)."
#: ../../Behavioral/Memento/README.rst:10
msgid ""
@ -39,47 +42,74 @@ msgid ""
"other objects or resources - the memento pattern operates on a single "
"object."
msgstr ""
"Паттерн «Хранитель» реализуется тремя объектами: Создатель, Опекун и "
"Хранитель.\n"
"\n"
"Хранитель — объект, который *хранит конкретный уникальный слепок состояния* "
"любого объекта или ресурса: строка, число, массив, экземпляр класса и так "
"далее. Уникальность в данном случае подразумевает не запрет существования "
"одинаковых состояний в слепках, а то, что состояние можно извлечь в виде "
"независимого клона. Это значит, объект, сохраняемый в Хранитель, должен *быть "
"полной копией исходного объекта а не ссылкой* на исходный объект. Сам объект "
"Хранитель является «непрозрачным объектом» (тот, который никто не может и не "
"должен изменять).\n"
"\n"
"Создатель — это объект, который *содержит в себе актуальное состояние внешнего "
"объекта строго заданного типа* и умеет создать уникальную копию этого "
"состояния, возвращая её обёрнутую в Хранитель. Создатель не знает истории "
"изменений. Создателю можно принудительно установить конкретное состояние "
"извне, которое будет считаться актуальным. Создатель должен позаботиться, "
"чтобы это состояние соответствовало типу объекта, с которым ему разрешено "
"работать. Создатель может (но не обязан) иметь любые методы, но они *не могут "
"менять сохранённое состояние объекта*.\n"
"\n"
"Опекун *управляет историей слепков состояний*. Он может вносить изменения в "
"объект, принимать решение о сохранении состояния внешнего объекта в Создателе, "
"требовать от Создателя слепок текущего состояния, или привести состояние "
"Создателя в соответствие состоянию какого-то слепка из истории."
#: ../../Behavioral/Memento/README.rst:23
msgid "Examples"
msgstr ""
msgstr "Примеры"
#: ../../Behavioral/Memento/README.rst:25
msgid "The seed of a pseudorandom number generator"
msgstr ""
"`Семя <http://en.wikipedia.org/wiki/Random_seed>`_ псевдослучайного генератора "
"чисел."
#: ../../Behavioral/Memento/README.rst:26
msgid "The state in a finite state machine"
msgstr ""
msgstr "Состояние конечного автомата"
#: ../../Behavioral/Memento/README.rst:29
msgid "UML Diagram"
msgstr ""
msgstr "UML Диаграмма"
#: ../../Behavioral/Memento/README.rst:36
msgid "Code"
msgstr ""
msgstr "Код"
#: ../../Behavioral/Memento/README.rst:38
msgid "You can also find these code on `GitHub`_"
msgstr ""
msgstr "Вы можете найти этот код на `GitHub`_"
#: ../../Behavioral/Memento/README.rst:40
msgid "Memento.php"
msgstr ""
msgstr "Memento.php"
#: ../../Behavioral/Memento/README.rst:46
msgid "Originator.php"
msgstr ""
msgstr "Originator.php"
#: ../../Behavioral/Memento/README.rst:52
msgid "Caretaker.php"
msgstr ""
msgstr "Caretaker.php"
#: ../../Behavioral/Memento/README.rst:59
msgid "Test"
msgstr ""
msgstr "Тест"
#: ../../Behavioral/Memento/README.rst:61
msgid "Tests/MementoTest.php"
msgstr ""
msgstr "Tests/MementoTest.php"