Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Практические аспекты разработки веб-ресурсов. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
Событие
Когда происходит
Обработчик события
DragDrop
пользователь перетаскивает мышью объект
onDragDrop
Error
возникновение javascript-ошибки
onError
Focus
окно или элемент формы получает фокус
onFocus
KeyDown
пользователь нажимает клавишу клавиатуры
onKeyDown
KeyPress
пользователь удерживает нажатой клавишу клавиатуры
onKeyPress KeyUp
пользователь отпускает клавишу клавиатуры
onKeyUp
Load
документ загружается в браузер
onLoad
MouseDown
пользователь нажимает кнопку мыши
onMouseDown
MouseOut
указатель мыши выходит за пределы элемента
onMouseOut MouseOver
указатель мыши помещается над элементом
onMouseOver
MouseUp
пользователь отпускает кнопку мыши
onMouseUp
Move
пользователь перемещает окно
onMove
Reset
пользователь нажимает кнопку «reset» формы
onReset
Resize
пользователь изменяет размеры окна или элемента
onResize Select
пользователь выбирает элемент формы
onSelect
Submit
пользователь нажимает кнопку «submit» формы
onSubmit Unload
пользователь закрывает документ
onUnload
Объект Дата (Date)
Создаёт экземпляр объекта Date, представляющего собой момент време­ни. Объекты даты Date основываются на значении количества миллисекунд, прошедших с 1 января 1970 года в часовом поясе UTC. Используется для рабо­ты с датой и временем.
Синтаксис вызова данного объекта следующий:
new Date();
new Date(value);
new Date(dateString);
new Date(year, month[, day[, hour[, minute[, second[, millisecond]]]]]);
Параметры Date:
value — целое значение, представляющее количество миллисекунд, прошедших с 1 января 1970 00:00:00 по UTC (эпохи Unix);
dateString — строковое значение, представляющее дату. Строка должна быть в одном из форматов, распознаваемых методом Date.parse() (совместимые с IETF RFC 2822 временные метки, а также версия ISO8601);
91
year — целое значение, представляющее год. Значения с 0 по 99 отоб- ражаются на года с 1900 по 1999;
month — целое значение, представляющее месяц, начинается с 0 для января и кончается 11 для декабря;
day — необязательный параметр. Целое значение, представляющее день месяца;
hour — необязательный параметр. Целое значение, представляющее ча- сы дня;
minute — необязательный параметр. Целое значение, представляющее минуты времени;
second — необязательный параметр. Целое значение, представляющее секунды времени;
millisecond — необязательный параметр. Целое значение, представля- ющее миллисекунды времени.
Например:
var d=new date();
alert (“Сегодня: ”+d);
Для объекта Date определены методы, вот некоторые из них:
Date.now() — Возвращает числовое значение, соответствующее теку­щему времени — количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC;
Date.parse() — Разбирает строковое представление даты и возвращает количество миллисекунд с 1 января 1970 года 00:00:00 по местному времени;
Все экземпляры объекта Date наследуются от Date.prototype. Объект прототипа конструктора Date может быть изменён, чтобы затронуть все экзем­пляры объекта Date;
Date.prototype.getDate() — Возвращает день месяца (1-31) указанной даты по местному времени;
Date.prototype.getDay() — Возвращает день недели (0-6) указанной да- ты по местному времени;
Date.prototype.getFullYear() -Возвращает год (4 цифры для 4-х значного года) указанной даты по местному времени;
Date.prototype.getHours() — Возвращает часы (0-23) указанной даты по местному времени;
Date.prototype.getMilliseconds() — Возвращает миллисекунды (0-999) указанной даты по местному времени;
92
Date.prototype.getMinutes() — Возвращает минуты (0-59) указанной да- ты по местному времени;
Date.prototype.getMonth() — Возвращает месяц (0-11) указанной даты по местному времени;
Date.prototype.getSeconds() — Возвращает секунды (0-59) указанной да- ты по местному времени;
Date.prototype.getTime() — Возвращает числовое значение указанной даты как количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC (отрицательное значение для даты до этого момента);
Date.prototype.getTimezoneOffset() — Возвращает смещение часового пояса в минутах для текущей локали;
Date.prototype.setDate() — Устанавливает день месяца указанной даты по местному времени;
Date.prototype.setFullYear() Устанавливает полный год (4 цифры для 4-х значного года) указанной даты по местному времени;
Date.prototype.setMonth() — Устанавливает месяц указанной даты по местному времени;
Date.prototype.toDateString() — Возвращает часть, содержащую только дату объекта Date в качестве человеко-читаемой строки;
Date.prototype.toISOString() — Преобразует дату в строку, следуя рас- ширенному формату ISO 8601;
Date.prototype.toString() — Возвращает строковое представление ука- занного объекта Date. Переопределяет метод Object.prototype.toString();
Date.prototype.toTimeString() — Возвращает часть, содержащую только время объекта Date в качестве человеко-читаемой строки;
Date.prototype.toUTCString() — Преобразует дату в строку, используя часовой пояс UTC.
Вопросы для самопроверки
1. Алфавит языка JavaScript.
2. Подключение скрипта к коду веб-страницы.
3. Типы данных в JavaScript.
4. Операции над данными в JavaScript: арифметические операции, логи-
ческие операции, операции отношения, побитовые операции.
93
5. Операторы в JavaScript: составной оператор, пустой оператор, оператор
присваивания, операторы условия, операторы циклов.
6. Инструкции переходов языка JavaScript.
7. Объектные типы данных языка JavaScript: объекты, массивы, функции.
8. JavaScript на стороне клиента. Подключение программного кода.
9. Программирование на основе событий.
94
3. ИНТЕЛЛЕКТУАЛЬНЫЕ ТЕХНОЛОГИИ АНАЛИЗА ДАННЫХ В INTERNET
Применение Internet-технологий
в интеллектуальных информационных системах
Объектный подход, так популярный в последнее время в построении раз­личного рода информационных систем, также нашел применение и в Internet­технологиях. Технология Java поддерживает мобильность программного обес­печения (ПО) в глобальной сети с помощью web-браузеров со встроенной вир­туальной машиной Java, а для операций с текстовыми информационными ре­сурсами объектные типы данных применяют в объектно-реляционных серверах
Informix, DB2, Oracle.
Благодаря активным внедрениям информационных систем с признаками интеллектуальности многие предприятия стали владельцами коллекций инфор­мационных ресурсов самой различной направленности и природы, каждая из которых управляется собственным программным обеспечением со специфиче­ским интерфейсом.
Относительно простые возможности интеграции обеспечиваются про­граммными приложениями. Более сложные проблемы семантического взаимо­действия пока еще являются предметом изучения различных научных проектов.
Неоднородность информационных ресурсов может проявляться в самых различных моментах, например:
в различии парадигм моделирования данных (реляционная модель, объектная модель…);
в многообразии сред представления данных (текст, видео, аудио и т.д.);
в различной степени структурированности задач;
в различиях интерпретации их содержания, в различии программных
сред, которые их поддерживают.
В связи с нынешним чрезвычайно бурным развитием коммуникационных технологий одновременно получают развитие мобильные информационные си­стемы. И принципы интеллектуальности являются важным критерием при их разработке. Уже спроектированы технические средства и программное обеспе­чение для их создания. Важным инструментом для разработки мобильного ПО стали технологии Java.
95
В проектировании информационных систем больше внимания стали уде­лять метаданным. Здесь исследования идут в двух направлениях — применение стандартов в представлении метаданных и обеспечение их поддержки в систе­ме. В то время как в технологиях баз данных поддержка метаданных была из­начально необходимой, в глобальной сети первого поколения метаданные не поддерживались. Исследования и практические работы по адаптации суще­ствующих и созданию новых стандартов представления метаданных для ин­формационных систем продолжаются.
На рис. 3.1 представлены функции ряда интеллектуальных информацион­ных систем. Рассматривая эти функции в совокупности и порознь можно выде­лить те направления, которые наиболее интересны с точки зрения применения в них технологий Internet.
В последние время также активно проводятся работы по семантическому текстовому поиску, создания семантического Web. Предполагается, что он бу­дет располагать средствами логического вывода.
Особое значение приобретает поиск технологий, позволяющих ускорить усвоение новых знаний, так как знания во многих областях становятся очень динамичными и для поддержания высокой квалификации специалистам необ­ходимо постоянно актуализировать свои знания и навыки. Это требует средств накопления новых знаний в форме, пригодной для их многократного использо­вания. Для этой цели хорошо подходят интеллектуальные Internet-технологии так называемого «общего назначения» — свободно распространяемые словари и энциклопедии, знания, общедоступные для широкого круга людей.
Рис. 3.1. Функции ряда интеллектуальных информационных систем
96
Подход открытых информационных ресурсов Open Source распростра­нился также на коллективный сбор и анализ информации, это движение полу­чило название «Интеллект открытых источников, разведка на основе открытых источников» [1], которое состоит из большого числа проектов, в том числе wiki-технология [2]. Она позволяет пользователям принимать непосредственное участие в редактировании контента сайта и при этом не требует какой-либо ре­гистрации, знаний HTML или любых других специальных знаний.
Технология wiki позволяет человечеству аккумулировать знания, обеспе­чивать навигацию по этой базе знаний и предоставлять средства для актуализа­ции этих знаний, создавая базы знаний различных объемов и степени сложно­сти от глобальных корпоративных до справочных систем небольших фирм, учебных заведений. Кроме того, технология wiki призывает активно работать с информацией, а не просто пассивно ее получать, что также способствует накоплению знаний.
Большое влияние на технологию wiki оказывает концептуальный проект Semantic Web, целью которого является изменение всей совокупности инфор­мационных ресурсов в глобальную, общедоступную базу знаний, а также предоставление средств управления этими знаниями. Для этого каждый ресурс должен быть семантически описан и должны предлагаться автоматизированные средства для обработки и представления знаний об этом ресурсе. При этом формируемое информационное пространство рассматривается не как пассивное предоставление информации, а как формируемое самим пользователем или ин­теллектуальной машиной средство создания и анализа новой информации.
В концепции Semantic Web разработаны средства описания контента до­кументов RDF [3] и формального представления онтологий OWL [4], которые позволяют формально обрабатывать информационные ресурсы на уровне их семантики в любой предметной области.
Семантическое расширение wiki предоставляет пользователю возможно­сти для семантической разметки информационных ресурсов, как показано на рис. 3.2.
Упомянутая разметка позволяет облегчить машинную обработку как са­мих ресурсов, так и запросов к ним, существенно упрощает всю структуру wiki, увеличивает скорость поиска необходимой информации пользователям и в це­лом улучшает качество ресурса.
97
Рис. 3.2. Семантическое расширение Википедии
Одним из динамично развивающимся направлением в области информа­ционных систем по обработке данных сетевого трафика, данных от различного рода датчиков, потоков сообщений е-mail, является управление потоками дан­ных. Для этого направления стали создаваться инструментальные средства — системы управления потоками данных. Отличие этого класса систем заключа­ется в том, что, они имеют дело с потоком транзитных ресурсов, которые нуж­но обрабатывать незамедлительно, а не с базой данных или коллекцией доку­ментов, содержащейся в среде хранения информационных ресурсов системы. В связи с этим нужно применять новые технологии, в том числе интеллектуаль­ные, для решения проблем, связанных с информационными ресурсами такой природы.
Также можно обратить фокус внимания на обратную сторону процесса — применение интеллектуальных свойств в Internet-технологиях. Практическое применение интеллектуального анализа данных возможно для персонализации посетителей web-страниц, для поиска случаев мошенничества в сфере банков­ских карт, выявления категорий клиентов и разработки привлекательных для них наборов услуг и цен [5].
Data Mining (DM) — это процесс обнаружения в «сырых» данных ранее неизвестных нетривиальных практически полезных и доступных интерпрета­ции знаний, необходимых для принятия решений в различных сферах челове­ческой деятельности.
98
Основу методов Data Mining составляют всевозможные методы класси­фикации, моделирования и прогнозирования, основанные на применении дере­вьев решений, искусственных нейронных сетей, генетических алгоритмов, эво­люционного программирования, ассоциативной памяти, нечёткой логики. К ме­тодам Data Mining нередко относят статистические методы (дескриптивный анализ, корреляционный и регрессионный анализ, факторный анализ, диспер­сионный анализ, компонентный анализ, дискриминантный анализ, анализ вре­менных рядов, анализ выживаемости, анализ связей). Такие методы, однако, предполагают некоторые априорные представления об анализируемых данных, что несколько расходится с целями Data Mining [2].
Одно из важнейших назначений методов Data Mining состоит в нагляд­ном представлении результатов вычислений (визуализация), что позволяет ис­пользовать инструментарий Data Mining людьми, не имеющими специальной математической подготовки. В то же время, применение статистических мето­дов анализа данных требует хорошего владения теорией вероятностей и мате­матической статистикой.
Первоначально задача ставится следующим образом:
имеется достаточно крупная база данных;
предполагается, что в базе данных находятся некие «скрытые знания».
Что означает «скрытые знания»? Это должны быть обязательно знания:
ранее неизвестные то есть такие знания, которые должны быть но- выми (а не подтверждающими какие-то ранее полученные сведения);
нетривиальные то есть такие, которые нельзя просто так увидеть (при непосредственном визуальном анализе данных или при вычислении про­стых статистических характеристик);
практически полезные то есть такие знания, которые представляют ценность для исследователя или потребителя;
доступные для интерпретации то есть такие знания, которые легко представить в наглядной для пользователя форме и легко объяснить в терминах предметной области.
Эти требования во многом определяют суть методов Data mining и то, в каком виде и в каком соотношении в технологии Data mining используются си­стемы управления базами данных, статистические методы анализа и методы искусственного интеллекта.
Проблемы бизнес анализа формулируются по-иному, но решение боль­шинства из них сводится к той или иной задаче Data Mining или к их комбина­ции. Например, оценка рисков — это решение задачи регрессии или классифи-
99
кации, сегментация рынка — кластеризация, стимулирование спроса — ассоци­ативные правила. Фактически, задачи Data Mining являются элементами, из ко­торых можно собрать решение подавляющего большинства реальных бизнес задач.
Перед использованием алгоритмов Data Mining необходимо произвести подготовку набора анализируемых данных. Так как интеллектуальный анализ данных может обнаружить только присутствующие в данных закономерности, исходные данные с одной стороны должны иметь достаточный объём, чтобы эти закономерности в них присутствовали, а с другой — быть достаточно ком­пактными, чтобы анализ занял приемлемое время. Чаще всего в качестве ис­ходных данных выступают хранилища или витрины данных. Подготовка необ­ходима для анализа многомерных данных до кластеризации или интеллекту­ального анализа данных.
Далее данные очищаются. Очистка удаляет выборки с шумами и пропу­щенными данными.
Очищенные данные сводятся к наборам признаков (или векторам, если алгоритм может работать только с векторами фиксированной размерности), один набор признаков на наблюдение. Набор признаков формируется в соот­ветствии с гипотезами о том, какие признаки сырых данных имеют высокую прогнозную силу в расчете на требуемую вычислительную мощность для обра­ботки. Например, черно-белое изображение лица размером 100×100 пикселей содержит 10 тыс. бит сырых данных. Они могут быть преобразованы в вектор признаков путём обнаружения в изображении глаз и рта. В итоге происходит уменьшение объёма данных с 10 тыс. бит до списка кодов положения, значи­тельно уменьшая объём анализируемых данных, а значит и время анализа.
Выбор целевой функции DM будет зависеть от того, что является целью анализа; выбор «правильной» функции имеет основополагающее значение для успешного интеллектуального анализа данных.
Наблюдения делятся на две категории — обучающий набор и тестовый набор. Обучающий набор используется для «обучения» алгоритма Data Mining, а тестовый набор — для проверки найденных закономерностей.
Задачи, решаемые методами Data Mining:
1. Классификация — это отнесение объектов (наблюдений, событий) к
одному из заранее известных классов.
2. Регрессия, в том числе задачи прогнозирования. Установление зависи-
мости непрерывных выходных от входных переменных.
100
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]