Горыныч
Система литературного программирования
НОВОСТИ | СКАЧАТЬ | РУКОВОДСТВО | КУПИТЬ | ПОМОЩЬ | КОНТАКТЫ |
<< Назад | Оглавление | Вперёд >>
Упакованные ссылки
Упакованной называется ссылка, которая указывает на целевой элемент не по имени, а по номеру. Вот так: @<#12345@>
, здесь символ '#'
является формальным признаком номера, а 12345
- номер некоего элемента.
Программа упаковывает ссылки, чтобы экономить память. Кроме того, благодаря упаковке упрощаются многие операции. Положительный эффект достигается за счёт того, что номера уникальны, в отличие от имён, а их обработка выполняется быстрее. С другой стороны, упаковка замедляет ряд операций из-за того, что выполняется трансформация ссылок и текста.
Упаковка ссылок - это замена в ссылках имён элементов на их номера. Упаковка выполняется при внесении изменений в элемент, а также при исправлении "битых" ссылок. Упаковываются только те ссылки, что указывают на реально существующие элементы.
Распаковка ссылок - это замена в ссылках номеров элементов на их имена. Распаковка выполняется при загрузке элемента в редактор, а также при удалении элемента. При распаковке неоднозначных ссылок программа квалифицирует их - указывает не только имя, но и путь к элементу. Это сохраняет однозначность. Также из-за распаковки возникает следующий эффект. Если ввести в ссылку номер элемента, то при следующей загрузке текста в редактор номер в ссылке будет заменён на имя элемента. Это сделано намеренно, потому что номера, в отличие от имён, нечитабельны и плохо запоминаются. Поэтому программа выводит в ссылках имена, а не номера.
Операции упаковки и распаковки являются "прозрачными". В редакторе увидеть упакованную ссылку возможно только в двух случаях - если в ссылку был введён номер несуществующего элемента или если произошёл какой-то сбой.
<< Назад | Оглавление | Вперёд >>