mirror of
https://github.com/php/doc-ru.git
synced 2025-08-20 23:31:15 +00:00
DsHashable: review
git-svn-id: https://svn.php.net/repository/phpdoc/ru/trunk@344761 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- EN-Revision: e9366ee458b2900c53a503b1ad97664e1d9a8859 Maintainer: rjhdby Status: ready -->
|
<!-- EN-Revision: e9366ee458b2900c53a503b1ad97664e1d9a8859 Maintainer: rjhdby Status: ready -->
|
||||||
<!-- Reviewed: no -->
|
<!-- Reviewed: yes Maintainer: lex -->
|
||||||
<!-- $Revision$ -->
|
<!-- $Revision$ -->
|
||||||
<phpdoc:classref xml:id="class.ds-hashable" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
<phpdoc:classref xml:id="class.ds-hashable" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||||
|
|
||||||
@ -23,8 +23,8 @@
|
|||||||
<para>
|
<para>
|
||||||
Функция <function>hash</function> используется для вычисления скалярного значения,
|
Функция <function>hash</function> используется для вычисления скалярного значения,
|
||||||
характеризующего хеш объекта и определяющего его положение в хеш-таблице.
|
характеризующего хеш объекта и определяющего его положение в хеш-таблице.
|
||||||
Это значение не обязательно должно быть уникальным. Объекты с одинаковым хешем
|
Хотя это значение необязательно должно быть уникальным, одинаковые объекты должны иметь
|
||||||
считаются идентичными.
|
одно и то же значение хеша.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
Функция <function>equals</function> используется для определения идентичности двух
|
Функция <function>equals</function> используется для определения идентичности двух
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: rjhdby Status: ready -->
|
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: rjhdby Status: ready -->
|
||||||
<!-- Reviewed: no -->
|
<!-- Reviewed: yes Maintainer: lex -->
|
||||||
<!-- $Revision$ -->
|
<!-- $Revision$ -->
|
||||||
<refentry xml:id="ds-hashable.equals" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
<refentry xml:id="ds-hashable.equals" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
<refnamediv>
|
<refnamediv>
|
||||||
<refname>Ds\Hashable::equals</refname>
|
<refname>Ds\Hashable::equals</refname>
|
||||||
<refpurpose>Определяет, являются ли текущий экземпляр объекта эквивалентным переданному</refpurpose>
|
<refpurpose>Определяет, равен ли текущий экземпляр переданному объекту</refpurpose>
|
||||||
</refnamediv>
|
</refnamediv>
|
||||||
|
|
||||||
<refsect1 role="description">
|
<refsect1 role="description">
|
||||||
@ -15,13 +15,13 @@
|
|||||||
<methodparam><type>object</type><parameter>obj</parameter></methodparam>
|
<methodparam><type>object</type><parameter>obj</parameter></methodparam>
|
||||||
</methodsynopsis>
|
</methodsynopsis>
|
||||||
<para>
|
<para>
|
||||||
Определяет, являются ли текущий экземпляр объекта эквивалентным переданному.
|
Определяет, являются ли текущий экземпляр эквивалентным переданному другому объекту.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Этот метод позволяет использовать объекты в качестве ключей в таких структурах
|
Этот метод позволяет использовать объекты в качестве ключей в таких структурах,
|
||||||
как <classname>Ds\Map</classname> и <classname>Ds\Set</classname>, или
|
как <classname>Ds\Map</classname> и <classname>Ds\Set</classname> или
|
||||||
любых других, честно реализующих этот интерфейс.
|
любых других структурах, распознающих этот интерфейс.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<note>
|
<note>
|
||||||
@ -56,7 +56,7 @@
|
|||||||
<refsect1 role="returnvalues">
|
<refsect1 role="returnvalues">
|
||||||
&reftitle.returnvalues;
|
&reftitle.returnvalues;
|
||||||
<para>
|
<para>
|
||||||
&true; если идентичны, и &false; в обратном случае.
|
&true;, если идентичны, &false; в противном случае.
|
||||||
</para>
|
</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: rjhdby Status: ready -->
|
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: rjhdby Status: ready -->
|
||||||
<!-- Reviewed: no -->
|
<!-- Reviewed: yes Maintainer: lex -->
|
||||||
<!-- $Revision$ -->
|
<!-- $Revision$ -->
|
||||||
<refentry xml:id="ds-hashable.hash" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
<refentry xml:id="ds-hashable.hash" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
<refnamediv>
|
<refnamediv>
|
||||||
<refname>Ds\Hashable::hash</refname>
|
<refname>Ds\Hashable::hash</refname>
|
||||||
<refpurpose>Возвращает скалярное значение для использования в роли хеша</refpurpose>
|
<refpurpose>Возвращает скалярное значение для использования в качестве значения хеша</refpurpose>
|
||||||
</refnamediv>
|
</refnamediv>
|
||||||
|
|
||||||
<refsect1 role="description">
|
<refsect1 role="description">
|
||||||
@ -15,36 +15,36 @@
|
|||||||
<void />
|
<void />
|
||||||
</methodsynopsis>
|
</methodsynopsis>
|
||||||
<para>
|
<para>
|
||||||
Возвращает скалярное значение для использования в роли хеша объекта.
|
Возвращает скалярное значение, которое будет использоваться в качестве значение хеша объектов.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
В то время как значение хеша само по себе не гарантирует идентичность объектов, но
|
В то время как значение хеша само по себе не гарантирует идентичность объектов, но
|
||||||
это все-же обязательным условием при проверке с помощью функции
|
все же все объекты, равные при проверке с помощью функции
|
||||||
<function>Ds\Hashable::equals</function>. Значение хешей для одинаковых объектов
|
<function>Ds\Hashable::equals</function>, должны иметь одно и то же значение хеша.
|
||||||
|
Значение хешей для одинаковых объектов
|
||||||
не обязаны быть уникальными, к примеру вы можете просто возвращать &true; для
|
не обязаны быть уникальными, к примеру вы можете просто возвращать &true; для
|
||||||
всех объектов и ничего не сломается. Единственным последствием будет то, что
|
всех объектов и ничего не сломается. Единственным последствием будет то, что
|
||||||
ваша хеш-таблица превратится в связанный список, потому что хеши всех объектов
|
ваша хеш-таблица превратится в связанный список, потому что хеши всех объектов
|
||||||
будут содержаться в одном блоке. Из этого следует, что важно выбирать хорошие
|
будут содержаться в одном блоке. Из этого следует, что важно выбирать хорошее
|
||||||
значения/функции для создания хешей. Например уникальный идентификатор, или
|
значение хеша, например уникальный идентификатор или адрес электронной почты.
|
||||||
e-mail адрес.
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Этот метод позволяет использовать объекты в качестве ключей в таких структурах как
|
Этот метод позволяет использовать объекты в качестве ключей в таких структурах как
|
||||||
<classname>Ds\Map</classname> и <classname>Ds\Set</classname>, или
|
<classname>Ds\Map</classname> и <classname>Ds\Set</classname> или
|
||||||
любых других, честно реализующих этот интерфейс.
|
любых других структурах, распознающих этот интерфейс.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<caution>
|
<caution>
|
||||||
<para>
|
<para>
|
||||||
Не выбираейте значение, которое может измениться, такие как публичные свойства.
|
Не выбираейте значение, которое может измениться, например, из общедоступных свойств.
|
||||||
Поиск в хеш-таблице завершится неудачей, если это значение изменится.
|
Поиск в хеш-таблице завершится неудачей, если это значение изменится.
|
||||||
</para>
|
</para>
|
||||||
</caution>
|
</caution>
|
||||||
|
|
||||||
<caution>
|
<caution>
|
||||||
<para>
|
<para>
|
||||||
Все объекты, которые должны считаться идентичными, должны иметь одинаковые хеши.
|
Все одинаковые объекты должны иметь одно и то же значение хеша.
|
||||||
</para>
|
</para>
|
||||||
</caution>
|
</caution>
|
||||||
|
|
||||||
@ -58,7 +58,7 @@
|
|||||||
<refsect1 role="returnvalues">
|
<refsect1 role="returnvalues">
|
||||||
&reftitle.returnvalues;
|
&reftitle.returnvalues;
|
||||||
<para>
|
<para>
|
||||||
Скалярное значение для использования в роли хеша.
|
Скалярное значение для использования как значение хеша.
|
||||||
</para>
|
</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ class HashableObject implements \Ds\Hashable
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Функция определения идентичности объектов. Обычно сверяют, что
|
* Функция определения идентичности объектов. Обычно проверяют, что
|
||||||
* значения хешей обоих объектов совпадают. Но можно добавить
|
* значения хешей обоих объектов совпадают. Но можно добавить
|
||||||
* дополнительные проверки.
|
* дополнительные проверки.
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user