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).
Базовий набір засобів JavaScript з використанням інших мов програмування — подібне до попереднього, але є і відмінності — для отримання сумісного JavaScript-коду необхідно використовувати іншу, більш досконалу, мову програмування (найчастіше це Java) і за допомогою спеціального базового набору засобів генерувати JavaScript-код.
Недоліки подібні до попереднього методу, хоча деякі компанії успішно його використовують. Приклади — Google Web Toolkit та сервіси, побудовані за його допомогою — Google Mail, Google Maps та інші.
Розробка подібного базового набору є доволі складною справою (потрібно знати недоліки та особливості обох мов а також особливості та недоліки різних двигунців), а наявні базові набори не є універсальними (а досить часто навіть специфічними) тому цей метод не є оптимальним.
Використовувати інші Web-технології (а JavaScript використовувати лише для зв’язку цих технологій з HTML). Такими технологіями можуть бути Adobe Flash, Microsoft Silverlight, Java Апплети та інші.
3. Опис основ технологій створення Web – додатків
3.1 Технологія AdobeFlash
Основою Flash є 2 речі:
· Векторний морфінг, тобто поступове «перетікання» одного кадру в інший. Це дозволяє робити складну анімацію та графічні ефекти.
· Програмування за допомогою ActionScript, що є мовою, схожою на JavaScript. Їїостанняверсія (3.0) єповноцінноюоб'єктно-орієнтованоюмовоюпрограмування.
Навідмінувід JavaScript, ActionScript немаєпроблемиізсумісністю — єдинареалізаціяце Adobe Flash Player, щопідключаєтьсяякплагінвусіпопулярнібраузери.
Пристворенні Web-додаткуєможливістьвикористовувативідео, звуковітаграфічніфайли, створюватиінтерактивнікористувацькіінтерфейситаповноцінні Web-додаткизвикористанням XML та PHP (абобудь-якихіншихтехнологій, щопрацюютьнасторонісервера).
Flash-файлмаєрозширення .swf івиконуєтьсязадопомогоюспеціальноїпрограми — Flash Player, щоможебутивстановленавбраузераякрозширення.
AdobeFlash — це середовище для створення застосунків під Flash платформу (FlashPlatform), разом з нею існують і інші інструменти (середовіща): AdobeFlexBuilder, FlashDevelopmentTool (FDT), та інші.
Другий «кит» Flash'а — повна програмованість. Flash використовує мову програмування ActionScript, яка по синтаксисі є схожою із JavaScript. Остання версія мови (ActionScript 3.0) є повноцінною об'єктно-орієнтованою мовою.
Flash-Файли мають розширення .swf і для перегляду вимагають наявності AdobeFlashPlayer, що може бути встановлений як плагін у браузер. FlashPlayer поширюється безплатно через сайт Adobe. Вихідні файли з розширенням .fla створюються в середовищі розробки MacromediaFlash, а потім компілюються в зрозумілий для FlashPlayer формат — .swf.
· 1Технології
· 2Історія
· 3Використання
· 43D-движки
· 5Недоліки
· 6Альтернативи
· 7Дивись також
· 8Посилання
· 9Виноски
«AdobeFlash (раніше ShockwaveFlash і MacromediaFlash) - це набір мультимедійних технологій, що розробляються та розповсюджуються компанією AdobeSystems (спочатку створених Macromedia). З моменту своєї появи на світ у 1996 році технологія Flash стала популярним методом створення анімаційних та інтерактивних елементів для веб-сайтів.
Flash використовують для розробки анімації, оголошень і різних компонентів сторінок, для інтеграції відео і з недавніх пір - збагачених інтернет-додатків».
Завдяки розробкам компанії AdobeSystems, багато програмні модулі на порталах мають графічний користувальницький інтерфейс, створений на основі технології AdobeFlash. На розглянутому порталі для розробки спеціальних програмних модулів буде використовуватися також графічний користувальницький інтерфейс, створений на основі технології Adobe Flash. Розробники вбудованих систем, що використовуються в промисловості, медицині, автомобілі, теж починають звертати увагу на Flash-технологию оскільки з її допомогою можна скоротити час на розробку ДПІ майже на 50%. Раніше команди розробників ПЗ мали переводити наявні у них прототипи ДПІ на мову С, С + + або Java - трудомісткий процес, що займає багато тижні і місяці. Зараз же можна за допомогою високорівневих інструментів технології Flash проектувати, створювати, і запускати компоненти ДПІ безпосередньо на вбудованих Flash-плейер, без необхідності писати графічні коди.
Технологія AdobeFlash стала завойовувати популярність серед розробників вбудованих систем з кількох причин:
• Понад мільйон розробників графічних додатків по всьому світу використовують авторські розробки інструментальних засобів технології Flash, які складають зараз великий фонд накопиченого досвіду, який можуть запозичити інші розробники. Більш того, тисячі існуючих Flash-компонентів для ринку настільних систем і мобільних телефонів можна легко інтегрувати в свої розробки;
• У порівнянні з Flash-плейери для настільних систем вбудовувані Flash-плеєри від Adobe (наприклад, FlashLite 3) вимагають менше пам'яті й забезпечують більш швидке відтворення графіки з меншою загрузкой ЦПУ;
• ЦПУ і графічні мікросхеми для вбудованих систем зараз підтримують частоти зміни кадрів, необхідні для відтворення Flash-розробок на дисплеях VGA і на дисплеях більшого розміру. Наприклад, для того, щоб отримати плавне відтворення анімаційної картинки на частоті 10 кадрів в секунду, в системі необхідно мати ЦПУ, що працює на швидкості 100 мільйонів команд в секунду (MIPS) - це значно менше пропонованого зараз значення в 300 MIPS або трохи більше для більшості ЦПУ вбудованих систем.Для переходу на Flash-технологию розробники промислових систем управління можуть зробити для себе вибір серед великого набору інструментальних засобів, багато з яких вони вже використовували раніше. Наприклад, для створення Flash-контенту можна скористатися інструментами CAD і текстовими процесорами для настільних систем, за допомогою спеціальних утиліт можна конвертувати різноманітні презентаційні формати у формат Flash. Розробники можуть також скористатися Flash-компонентами, які інтегрують Flash-контент та елементи керування ActiveX. Різноманітність засобів підтримки для створення Flash-контенту та управління екраном спрощує перехід до інтерфейсів користувача, що базується на Flash-технології.
Традиційно Flash-плеєр запускається у веб-браузері або в оконной системі. Однак, розробка ДПІ може бути значно спрощено, якщо цю модель повернути з ніг на голову і зробити головною Flash-середовище, де будуть запускатися всі графічні програми незалежно від того, зроблені вони во Flash-технології, чи ні. Тоді Flash-технологія бере на себе роль адміністратора екрана, надаючи можливість розробнику графіки здійснювати детальний контроль над переміщеннями по меню і над звуковими ефектами. В такому середовищі простіше виконується адаптація під потреби користувача за рахунок більш вільного позиціювання, зміни розмірів і конфігурування графічних компонентів.На рис. 1 дан приклад використання Flash-технології в якості адміністратора екрана. Програма ліворуч - це Flash-плейер, за допомогою якого безпосередньо в простір програми були завантажені два компоненти: графічна 2D-бібліотека і графічний драйвер, який управляє графічним обладнанням. Завантаживши драйвер таким шляхом, виявляється можливим здійснювати безпосереднє управління графічним обладнанням безпосередньо з програми, а, отже, підвищується продуктивність системи. Справа «рідна» програма ОС малює тривимірну картинку засобами OpenGL ES, стандартного інтерфейсу API для тривимірних додатків у вбудованих системах. Як і Flash-програма, інтерфейс API також безпосередньо управляє графічним обладнанням, забезпечуючи високу продуктивність виводу.
Рис. 1 Інтеграція Flash-додатків з іншими графічними додатками
Рисунок 1 — Інтеграція Flash-додатків з іншими графічними додатками. У даному прикладі програма, заснована на Flash-технології, управляє додатком для малювання тривимірних зображень, що базується на використанні функцій 3D API пакету OpenGL ES.
Багато кристали для вбудованих систем в даний час підтримують роботу з кількома шарами, що дає можливість Flash-програмами ефективно співіснувати з іншими графічними програмами на одному й тому ж дисплеї. На рис. 1 Flash-плейер прорісовивает шар переднього плану і керує відображенням тривимірних зображень на фоновому шарі. Щоб зробити дивись тривимірне полотно, розробник використав на шарі переднього плану техніку хроматичної ключа (chroma key). Оскільки візуалізація тривимірного зображення і Flash-картинки відбувається в різних шарах, графічний контролер може оновити тривимірну картинку без перерісовкі Flash-контенту. Це зменшує мерехтіння зображення і знижує навантаження на ЦПУ.
Розробник може також використовувати методи альфа-сполучення (alphablending) і хроматичної ключа для того, щоб зробити Flash-компоненти напівпрозорими, а потім розмістити їх прямо поверх іншого контенту.