mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-06-06 05:55:09 +02:00
Memento. Note: not equals to English version!
This commit is contained in:
parent
0ebafc5eaa
commit
5d11bc5a87
@ -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
|
||||
|
@ -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"
|
||||
|
Loading…
x
Reference in New Issue
Block a user