Дипломная работа: Технічне створення Web-додатків

Об'єктна модель документу — специфікація прикладного програмного інтерфейсу для роботи зі структурованими документами (як правило з документами в форматі XML та похідних форматах).

Об'єктна модель документу визначає класи, методи та атрибути цих методів для аналізу структури документу та роботи із представленням документів у вигляді дерева. Це все призначено для того, щоб мати можливість доступу та динамічної модифікації структури, змісту та оформлення документу. Саме за допомогою об’єктної моделі документу в технології Ajax відбувається динамічна модифікація сторінки.

В перших браузерах з’явилися різні, часом несумісні інтерфейси для роботи з HTML в двигунцях JavaScript. Потім World Wide Web Consortium (W3C) узгодив та визначив низку стандартів, що отримали назву Об'єктна модель документу W3C. Специфікації W3C не залежать від платформи або мови програмування.

Існують декілька версій об’єктної моделі даних W3C, що мають назву рівнів. Кожен рівень складається з декількох обов’язкових та необов’язкових модулів. В 2005 році рівні 1, 2 а також деякі модулі 3-го рівня визнано як рекомендації W3C, що означає, що вони набули кінцевої форми.

Існують такі рівні об’єктної моделі даних W3C:

Нульовий рівень — не був стандартизований, але став основою першого рівня об’єктної моделі даних W3C. Прикладом є реалізація об’єктної моделі даних в ранніх версіях браузера Netscape.

Перший рівень — обхід структури (дерева) документу та модифікація вмісту (додавання, видалення та зміну елементів). Має повну підтримку сучасними браузерами.

Другий рівень — підтримка простору імен XML, фільтрованих представлень та подій. Має майже повну підтримку сучасними браузерами.

Третій рівень — складається з 6 модулів, статус рекомендацій W3C мають лише 3 (Ядро, Збереження та Завантаження а також Верифікація) інші 3 мають статус чернеток W3C (Представлення та формати, Xpath та Вимоги). Має часткову підтримку сучасними браузерами.

Не зважаючи на стандартизацію, браузери не мають повної сумісності їх об’єктної моделі даних.

Яскравим прикладом вказаної проблеми є функція createXmlHttpRequestObject, що створює екземпляр об’єкта XMLHttpRequest (необхідний для функціонування Ajax). Вона враховує різні двигунці та навіть різні версії двигунців — загалом вона виконує 7 спроб створити екземпляр об’єкта XMLHttpRequest, ігноруючи помилки. При розробці нових версій (або навіть нових двигунців) її, скоріше за все, доведеться модифікувати для працездатності в нових умовах.

function createXmlHttpRequestObject ()

{

if (window.XMLHttpRequest) { // Длябраузерів FireFox, Opera, Safari та MSIE 7

try {

return new XMLHttpRequest();

} catch (e) {}

} else {

var activeXObjects = ['Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP']; //Длярізнихверсійбраузера MSІЕ, щоменшіза 7

for (var i=0; i<activeXObjects.length; i++) {

try {

return new ActiveXObject(activeXObjects[i]);

} catch (e) {}

}

}

return null;

}

2.6 Аналіз механізмів вазаємодії у Web 2.0

В попередньому розділі була описана проблема розробки та налагодження web-програм, пов’язана з специфікою мови JavaScript. За весь час її існування було представлено декілька способів вирішення проблем несумісності:

К-во Просмотров: 280
Бесплатно скачать Дипломная работа: Технічне створення Web-додатків