ТОП-10 популярных


НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...


Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...

Internet2, или cтарые песни о новом
Когда-то на заре Интернета, тогдаеще военно-научной сетиAPRAnet, были заложены основныепринципы функционирования«Сети сетей». В их числе — использованиепротокола, называемого сейчасIPv4. В...

PHP. Типовые проекты. Часть Шестая.


26-07-2015

Рассмотрим теперь, каким образом этот проект позволяет создать интерфейс, способный выполнять последующие доработки. Можно начать с одного модуля локализации, а носители других языков могут добавить новые модули. Это применимо не только к процедуре локализации, но может пригодиться для решения любых проблем, предполагающих наличие нескольких алгоритмов для заданной проблемы.
Необходимо иметь в виду, что проект Strategy предназначен не просто для аль­тернативных данных, но и для альтернативных функциональных возможностей. Другими словами, если единственная разница между стратегиями может выражаться в значениях, для решения определенной проблемы проект может быть неприменим. На практике пример, приведенный ранее, будет содержать значительно больше функциональных различий между языками, и перечень этих различий может занять столько же страниц, сколько и эта глава.
Типовой проект Strategy можно найти в PEAR_Error - в классе обработки ошибок, включенном в PEAR. Стерлинг Хьюджес (Sterling Hughes) написал систему обработки ошибок в PEAR, что позволит использовать приемлемое число стандартов поведения по умолчанию, позволяя тем самым в зависимости от контекста применения перейти на альтернативное применение.

Листинг 29.6. Использование класса localization

<?php
print("Введите по-английски<br>n"),• include_once('2 9-5.php'); $local = new English;
print($local->formatMoney(12345678) . "<br>n"); print($local->translate('yes') . "<br>n"); print(" Введите по-немецки^^^"); include_once('2 9-6.php'); $local = new German;
print($local->formatMoney(12345678) . "<br>n"); print($local->translate('yes') . "<br>n");

?>

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Типовые проекты. Часть Пятая. NVIDIA уверена в своих силах