на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


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


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

ВСТУП

Швидкий розвиток інформаційного Web - середовища призвів до того, що вимоги до Web-додатків суттєво змінилися. Зокрема спостерігається тенденція до створення багатих Web-додатків, тобто додатків, інтерфейс яких надає можливості, що не відрізняються від можливостей звичайного додатку, який призначений для настільної системі. Але при роботі програм, що підтримують мережеву взаємодію, усунути затримку відповіді, пов’язану з передачею даних через мережу Інтернет, принципово неможливо. Пом’якшити негативний ефект від затримки даних дозволяє технологія Ajax. Але застосування цієї технології повністю змінило структуру та принципи роботи Web-додатків. В сучасних мережевих програмах все більше функцій виконується на клієнтському боці, тому обсяг коду клієнтської частини Web-додатку суттєво збільшується і робота над нею виконується групою розробників. В результаті виявилося, що мова JavaScript, яка застосовується для написання Ajax-додатків, має специфічне застосування і не відповідає вимогам до інструментальних засобів розробки та налагодження програм.

В цій роботі запропоновано новий підхід до створення Ajax-додатків, згідно якому для написання коду клієнтської частини програми разом з JavaScript-сценаріями мають застосовуватися Java-апплети. Завдяки взаємодії між JavaScript та Java стає можливим розділити задачі, що стоять перед додатком. Застосовуючи мову Java для написання коду, що реалізує складні алгоритми, можна застосувати численні інструментальні засоби для розробки та налагодження програм. При цьому на долю JavaScript залишаються незначні по об’єму фрагменти коду, які динамічно змінють вміст сторінки, що можуть бути написані та налагоджені без застосування спеціальних інструментальних засобів розробки та налагодження програм.

Запропонований підхід реалізований у вигляді набору базових засобів для написання Ajax-додатків.

Мета дипломної роботи – Розглянути технічне створення Web- додатків таких як Adobe Flash, Microsoft Silver light, Java.

Об'єктом дослідження є :Adobe Flash, Java, Microsoft Silver light.


1. Огляд існуючих типів додатків

1.1 Типи додатків

Розширення-(англ. extension) можуть бути використані для зміни поведінки наявних функцій або для додавання нових можливостей. Розширення особливо популярні у Firefox, оскільки розробники Mozilla створювали браузер, як досить мінімалістичну програму, що мало запобігти росту кількості помилок і запобігти громіздкості програми, зберігаючи при цьому високий степінь розширення, таким чином індивідуальні користувачі зможуть додати функції, яким вони віддають перевагу.

Розширення технологій

·  CSS (Cascading Style Sheets)

·  DOM (Document Object Model) - використовується для зміни XUL в реальному часі або зміни вже завантаженого HTML

·  JavaScript - основна мова браузера Mozilla

·  XPCOM (кросплатформова модель компонентних об’єктів)

·  XPConnect

·  XPI (кросплатформовий встановлювач)

·  XUL (XML-мова інтерфейсу користувача) - використовується для визначення інтерфейсу користувача, та взаємодії з ним.

Додавання можливостей

Розширення, зазвичай, використовуються, щоб додати нові можливості до програми. Приклади можливостей, які можуть бути додані за допомогою розширень: читачі RSS, менеджери закладок, пенали, клієнтські програми для окремих веб-сайтів, менеджери протоколу FTP, електронна пошта, жести мишки, перемикання проксі-серверів, засоби веб-розробки, тощо. Багато розширень Firefox виконують функції, які раніше раніше були частиною Mozilla Suite, наприклад, ChatZilla, клієнт IRC та календар.

Зміна зовнішнього вигляду веб-сторінок для користувача

Багато розширень можуть змінювати вміст веб-сторінки при її відтворенні на екрані. Наприклад, розширення Adblock може запобігти завантаженню рекламних зображень. Інше популярне розширення Greasemonkey, дозволяє користувачеві встановити скрипти, які змінюють цільові підмножини сторінок на ходу, у спосіб, що є програмним розширенням таблиць каскадних стилів.

Інші використання

Розширення також існують для легковажних, гумористичних або сатиричних цілей. Деякі посилаються на історичні особливості браузера Firefox, наприклад, відновлюючи шаблон тексту «delicious delicacies», що був вилучений в Firefox 0.9, або генерування випадкових імен браузера, натякаючи на постійні зміни назв програми.

Втулки

Втулка (англ. plugin) — це, як правило, платформозалежний модуль, що дозволяє браузеру оброблювати спеціальні типи вмісту на веб-сторінках, наприклад, відео, аплети, документи PDF тощо. Втулки браузера часто встановлюються окремо від браузера, разом з пакунком головних програмних засобів, що призначені для роботи з цим типом медіа. Наприклад, втулок для Java аплетів встановлюється, здебільшого, разом з встановленням JRE або JDK, втулок перегляду докуменів PDF — разом з встановленням програми Acrobat Reader і т.д. Власне, і оновлення втулків, на відміну від розширень, здійснюється поза браузром. Найпоширенішими втулками є Acrobat Reader, Flash Player, Java, Quicktime, RealPlayer, Adobe Shockwave та Windows Media Player.

Сумісність та оновлення

Додатки містять файли з метаданими, що використовуються механізмом, який контролює встановлення додатків. Серед іншого, ці файли визначають максимальні і мінімальні версії продукту Mozilla, з якими додатки можуть бути використані. Якщо спробувати встановити додаток на версію програми поза цього діапазону, його буде встановлено, але вимкнено. Додатки будуть часто працюють за межами їх визначеної сумісності, і деякі досвідчені користувачі редагують метадані файлу, щоб обійти це обмеження. Створено навіть розширення Nightly Tester Tools, яке спрощує цю процедуру.Однак формальна перевірка сумісності не гарантує правильність функціонування додатку.

Менеджер додатків періодично перевіряє наявність оновлень для встановлених додатків, хоча також цю перевірку можна зробити вручну. Типово служба оновлень буде шукати оновлення в додатках Mozilla, але розробник може вказати альтернативні адреси оновлень.

Зовнішні посилання

Категорія: Mozilla

1.2 Поява та розвиток Web 2.0

Появу терміну Web 2.0 пов’язують зі статтею Тіма О’Реллі [1] від 30 вересня 2005 року, в якій автор прив’язав появу великої кількості сайтів, об’єднаних деякими загальними принципами, із загальною тенденцією розвитку інтернет-спільноти, і назвав це явище Web 2.0, як противага «старому» Web 1.0.

Незважаючи на те, що значення цього терміну до цього часу викликає безліч суперечок, ті науковці, що визнають існування Web 2.0, виділяють декілька основних аспектів цього явища — Web-служби, Ajax, Mash-up, Теги і т.п.

Web-служби — програми, взаємодія з якими здійснюється через Web (протокол HTTP) а обмін даними відбувається в форматі XML, JSON та подібних. В результаті ПЗ може використовувати Web-служби замість самостійно реалізовувати потрібні функціональні можливості.

Ajax або Asynchronous JavaScript and XML — підхід до побудови Web-програм, при якому Web-сторіка асинхронно та без перезавантаження отримує потрібні користувачу дані з сервера. Дуже часто Ajax вважають синонімом Web 2.0, але це абсолютно не вірно — Web 2.0 не прив’язаний до будь-яких технологій і є скоріше тенденцією розвитку Інтернету.

Mash-up — сервіс, що дозволяє використовувати інформацію з інших сервісів як джерело інформації, пропонуючи користувачу нові функціональні можливості для роботи. В результаті такий сервіс може стати новим джерелом інформації для інших mash-up сервісів. Виникає мережа залежних один від одного сервісів, інтегрованих один з одним.

Теги — ключові слова, що описують певний об’єкт, або відносять його до певної категорії. Це мітки, що надаються об’єкту, щоб визначити його місце серед інших об’єктів. Поява і швидке розповсюдження блогів, що активно використовують теги, також вписується концепцію Web 2.0

Багаті Web-програми — програми, що мають функціональність та можливості традиційних програм, але працюють в браузері і активно взаємодіють з сервером. Завдяки цьому створюється система, що дозволяє виконувати роботу, пов’язану з створенням та обробкою інформації більш ефективною.

Інтерфейс користувача таких програм більше нагадую інтерфейс класичних програм ніж web-програм тому ефективно використовувати такі програми можуть навіть ті користувачі, що мають мінімальні знання про Інтернет.

1.3 Технологія Web 2.0

Технологія Web 2.0 включає в себе:

·  синдикацію

·  протоколи передачі даних

·  браузери з плагінами та розширеннями

·  клієнтське ПЗ

·  Типовий Web 2.0 сайт використовує такі технології:

·  Cascading Style Sheets — розділення вмісту та оформлення

      Folksonomies — спільні помітки, соціальна класифікація, соціальне індексування та соціальне тезування

      Microformats — розширення сторінки додатковою семантикою

      API, що базується на XML або JSON

      Rich Internet application, що базуються на Ajax           Синдикація — частина матеріалів сайту стають доступні для використання на інших сайтах.

      Mash-up — збирання вмісту з різних джерел


2. Загальні відомості про Web - технології

2.1 Базові технології Web

HTML — стандартна мова розмітки документів для Web, де всі Web-сторінки створюються за допомогою HTML (або XHTML). Мова HTML інтерпретується браузером у вигляді документу, зручному для людини.

HTML створювався в 1991-1992 роках як мова для обміну науковою та технічною документацією, яка зручна для людей, що не є спеціалістами з верстки. Вона успішно мінімізує проблеми зі складністю SGML шляхом визначення невеликої кількості структурних та семантичних елементів (які розмічаються тегами), які використовуються для створення простих, але гарно оформлених документів. Також, крім спрощення структури документу, у HTML міститься підтримка гіпертексту. Мультимедійні можливості були додані пізніше.

Текстові документи, які містять код на мові HTML, обробляються спеціальними програмами, які відображають документ у форматованому вигляді. Такі програми, що називаються браузерами, забезпечують зручний графічний інтерфейс для взаємодії користувача із сервером — запит Web-сторінок, їх відображення та відправлення введених користувачем даних на сервер.

Від початку HTML був спроектований і створений як засіб структурування та форматування документів, без їх прив’язки до засобів відображення. Але сучасні застосування HTML далекі від його початкових задач — додані мультимедійні можливості, з’явилися засоби для створення складних графічних оформлень, додана можливості підключення плагінів та розширень.

Для створення динамічних сторінок було розроблений цілий ряд технологій — JavaScript, Java Апплети, Adobe Flash, Microsoft Silverlight. Реалізації деяких з них інтегровані в браузери (JavaScript), для роботи з іншими потрібно підключати спеціальні плагіни (доступні безкоштовно на Web-сайтах розробників або поставляються разом з операційними системами чи браузерами).

В середині 90х років розгорнулось боротьба між розробниками найбільш популярних (на той час) браузерів — Netscape Navigator та Microsoft Internet Explorer за ринок інтернет-браузерів. Основний спосіб боротьби — розробка та впровадження нових технологій, що були не сумісні з іншими браузерами. В результаті навіть на сьогоднішній день не вдалося досягти повної сумісності між усіма браузерами, хоча їх розробники та консорціум W3C, який займається стандартизацією Web-технологій, докладають максимум зусиль для цього.

З іншого боку, в результаті цієї боротьби, з’явився ряд технологій, що займають ключову роль в розвитку сучасного Web, серед них — JavaScript та Ajax. Зараз важко знайти сайт, побудований згідно принципів Web 2.0, який би не використовував Ajax або JavaScript.

2.2 Загальнi вiдомостi про Ajax

Ajax — група методів Web-розробки, що використовуються для створення Web-програм з багатими можливостями та мережевою взаємодією, що базується на «фоновому» обміні даними браузера з Web-сервером. В результаті сторінка не перезавантажується повністю і Web-програма стає швидкою та зручною.

Ajax це не самостійна технологія, а скоріше концепція використання декількох суміжних технологій. Ajax базується на двох основних принципах: використання технології взаємодії із сервером за допомогою JavaScript об’єкта XMLHttpRequest без перезавантаження усієї сторінки використання DHTML для динамічної зміни вмісту сторінки та реагування на дії користувача

Для передачі даних від сервера до клієнта використовуються формати XML або JSON. Класична модель web-програм пов’язана не лише з використанням базових web-технологій, а і з специфічним способом роботи з web-програмою, при якому web-браузер є лише низькорівневим терміналом. Він не має інформації про те, який етап роботи виконується користувачем. Він лише отримує готову сторінку в форматі HTML і відображає її користувачу.

У web-програмах, побудованих за допомогою технології Ajax, частина функціональних можливостей переноситься з сервера на клієнт. На деякі дії користувача така web-програма може реагувати самостійно. Якщо наявних можливостей не вистачає для виконання ініційованих користувачем дій то відбувається взаємодія із сервером, при цьому користувач може виконувати інші дії. Оскільки HTML документ присутній на стороні клієнта протягом всьго часу роботи з web-програмою, то він здатний зберігати всю інформацію про її стан.

Технологія динамічного завантаження вмісту існувала і раніше — за допомогою атрибуту src можна було завантажити зовнішній сценарій JavaScript, який змінить поточну сторінку. Але цей метод не є дуже вдалим через обмеження атрибуту src та додатковому навантаженні на сервер, бо він має виконати додаткові дії для генерації спеціального сценарію JavaScript, що містить інструкцію, як модифікувати поточну сторінку в нову.

Засоби, що використовуються в рамках технології Ajax не єдиний спосіб забезпечити асинхронний обмін даними з сервером. Наприклад Macromedia Flash (починаючи з 4ї версії) може завантажувати дані в форматі XML або CSV з серверу без перезавантаження сторінки. Але цю технологію не можна використовувати для створення багатих web-програм бо вона в основному використовується для роботи з мультимедійними даними і малопридатна для динамічної зміни вмісту сторінки.

Пізніше Microsoft створила об’єкт XMLHttpRequest в Internet Explorer 5, що і став основою Ajax.


2.3 Переваги Ajax

Створення web-програм, що мають інтерфейс та багаті можливості, подібні до звичайних програм — при цьому, завдяки активній взаємодії з сервером, web-програм мають значні переваги над звичайними програмами.

Економія трафіку — замість завантаження усієї сторінки достатньо завантажити відносно невелику частину, що змінилася.

Зменшення навантаження на сервер — серверу не потрібно кожного разу генерувати усю сторінки, а лише ту частину, що змінилася.

Прискорення реакції інтерфейсу — оскільки завантажується лише частина сторінки то користувач бачить результат своїх дій швидше.

Недоліки Ajax:

Відсутня інтеграція із стандартними інструментами браузера — не працює кнопка «Назад», сторінку, згенеровану за допомогою Ajax не можна додати в закладки.

Проблема з індексуванням сайту пошуковими роботами — у них відсутня підтримка JavaScript.

Використання JavaScript та DOM, що мають різну реалізацію в різних браузерах та навіть різних версіях браузерів.

2.4 Мова JavaScript

JavaScript — назва реалізація мови програмування ECMAScript. Найпоширеніше і найвідоміше застосування мови — написання сценаріїв для Web-сторінок, але вона також використовується для впровадження сценаріїв керування об'єктами вбудованими в інші програми.

JavaScript за назвою дуже схожа на мову Java. Але це зовсім різні мови з різними сферами застосування. Права на назву JavaScript належать Sun Microsystems (розробник Java) але JavaScript розробляла зовсім інша компанія — Netscape для власного браузера Netscape Communications.

Зараз JavaScript підтримують всі основні двигунці браузерів — Trident (Internet Explorer), Presto (Opera), Gecko (Firefox, Mozilla, Netscape) та KHTML/WebKit (Konqueror, Safari).

JavaScript має низку властивостей об'єктно-орієнтованих мов, але завдяки концепції прототипів підтримка об'єктів в ній відрізняється від традиційних мов ООП.JavaScript має ряд властивостей, спільних з функціональними мовами, що додає мові додаткову гнучкість.

JavaScript має подібний синтаксис, але має з нею відмінності:

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

функції як об'єкти першого класу

обробка винятків

автоматичне приведення типів

автоматичне прибирання сміття

анонімні функції

Одна з популярних технологій, що дозволила зробити сторінки динамічнішими і забезпечити нові можливості — це динамічне завантаження і вставка даних в документ, що отримала назву AJAX.

При використанні в рамках технології DHTML JavaScript код включається в HTML-код сторінки і виконується інтерпретатором, вбудованим в браузер. Код JavaScript вставляється в теги <script></script> з обов'язковим за специфікацією HTML 4.01 атрибутом type="text/javascript", хоча в більшості браузерів мова сценаріїв по замовчуванюю саме JavaScript.

При розробці великих і нетривіальних Web-програм з використанням JavaScript дуже важлива наявність зручних та досконалих інструментів відладки. Оскільки браузери мають різні двигунці, які по різному інтерпретують JavaScript (та об’єктну модель документу), то потрібно мати налагоджувач для кожного з основних двигунців.

Проблема з налагодженням JavaScript сценаріїв є найбільшим недоліком цієї мови. Спроба стандартизації у вигляді ECMAScript не досягла успіху — кожен двигунець має особливості і, фактично, доводиться писати код для різних двигунців одночасно.

Також JavaScipt має обмеження часу на завершення свого виконання (це може бути як фіксоване число у випадку браузерів з двигунцем Gecko або інше обмеження, наприклад максимальне число елементарних операція у випадку браузерів з двигунцем Trident).

2.5 Об'єктна модель документа

Об'єктна модель документу — специфікація прикладного програмного інтерфейсу для роботи зі структурованими документами (як правило з документами в форматі 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. За весь час її існування було представлено декілька способів вирішення проблем несумісності:

Базовий набiр засобiв JavaScript — проблеми несумісності вирішуються розробниками базового набору засобів, але для розробки сценарію JavaScript потрібно використовувати певний рівень абстракції а не оригінальну мову.

Приклади — jQuery, Prototype, MooTools.

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

Також, через використання абстракції та врахування недоліків різних двигунців, у JavaScript сценаріїв, написаних за допомогою базових наборів засобів, збільшується час виконання та навантаження на комп’ютер (у порівнянні з використанням «чистого» JavaScript).

Страницы: 1, 2, 3, 4


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.