Файл: Программные средства создания клиентских программ (Основные средства создания клиентских программ).pdf
Добавлен: 22.04.2023
Просмотров: 223
Скачиваний: 1
Таким образом, мы выяснили сильные и слабые стороны данной среды разработки клиентских программ. А также поняли, в каких ситуациях её лучше использовать и в совокупности с какими инструментами.
1.4 Active-x-объекты
Следующей на очереди будет ActiveX. По своей сути ActiveX является архитектурой, одному звену вступать в контакт с другим посредством сети. Чтобы создать эти самые элементы ActiveX разработчик может воспользоваться теми языками программирования, которые отвечают на спецификацию ActiveX. Среди таких языков C++, Basic, Delphi. С кое-какими ограничениями можно также использовать Visual J++.
Под управляющими компонентами ActiveX принято понимать отдельные части программного кода. Эти части кода могут быть задействованы в других программах и, даже, на других языках. Так, например, управляющий элемент, написанный на Basic может без особых трудностей работать на C++. данная особенность сохранилась благодаря более ранним версиям OLE. А ActiveX это продолжение и развитие той идеи. Другими словами объекты, созданные на ActiveX являются усовершенствованными объектами OLE, только с большим функционалом.
Благодаря тому, что компонент ActiveX возможно использовать неоднократно, это очень удобно при создании простых клиентских программ. С помощью данной архитектуры удается не только использовать сторонние библиотеки, но также повторно применять управляющие элементы, которые сами и создали. В последнее время компанией Microsoft предпринимаются попытки сделать из данной архитектуры обычный инструмент для проектирования web-страниц.
Несмотря на то, что в настоящее время основной функцией ActiveX является дополнение анимацией веб-страниц, есть случаи, когда более простой интерфейс более предпочтителен. Главная особенность ActiveX в том, что он может внести в web-приложение клиентского приложения. Благодаря компонентам данной архитектуры у разработчиков есть возможность получить доступ к базам данных, которые находятся на другом сервере.
Но главным недостатком является то, что данная архитектура является не кроссплатформенной. И данную проблему пока не удалось решить, поэтому часто возникают трудности при использовании архитектуры на разных системах.
Для использования данной архитектуры на других системах необходимо перекомпилировать код под необходимую систему. Невозможно создать универсальный компонент, который будет работать на всех системах. На сегодня ActiveX поддерживается следующими системами: Windows NT и 95. компания Microsoft работает над поддержкой операционных систем Линукс и Макинтош. И пока данная поддержка не осуществлена, данную архитектуру нельзя считать полноценной. Также немаловажной особенностью является то, что по умолчанию элементы ActiveX исполняются только в Internet Explorer, для других браузеров есть специальный плагин, после установки которого данные элементы будут работать и на других браузерах.
Исходя из всего вышеперечисленного, можно сделать вывод, что ActiveX является довольно перспективным инструментом за счет наличия большого количества библиотек. Но отсутствие поддержки разных платформ резко ограничивает возможности данной архитектуры.
1.5 Flash-компоненты
В настоящее время все большую популярность приобрели flash-компоненты. Основная их задача заключается в проектировании маленьких программ на клиентской стороне. При построении web-страниц часто необходимо решать то, какую технологию использовать в том или ином случае. И выбор падает на те средства, которые больше всего отвечают требованиям данного проекта, а также немаловажное значение играют предпочтения разработчика.
Технологии флеш проектировались не с целью создания большим программ. Их основным предназначением является:
- воспроизведение видео;
- загрузка серверных ресурсов на страницу;
- обработка видеоматериала.
Данное средство не предусматривает работу с массивами, хэшами, функциями. Средства для работы со строчными данными также весьма ограничены.
Но все поменялось с выходом пятой версии языка ActionScript. Начиная с этой версии язык стал все больше похож на остальные языки программирования. Необходимо учесть, что разработчик, знакомы с четвертой версией языка, без проблем перейдет на пятую версию, в которой те же функции выполняются гораздо проще, а также имеется набор нововведений, делающий из ActionScript довольно перспективный язык для создания клиентских программ.
Таких образом, можно сделать вывод, что основным предназначением Flash-технологий являются маленькие программы, требующие быстрой и качественной разработки.
Примерами таких программ могут быть различные калькуляторы, системы тестирования, Flash-игры, инструменты для работы с графиками. Наличие данной технологии практически у каждого пользователя обеспечивает большую свободу в работе графического дизайнера. По данным статистики, около 96% пользователей есть плеер для Flash-фильмов. И наконец с помощью данной технологии можно вносить корректировки в фильмах с помощью Flash-редактора и тут же смотреть результат.
1.6 Технологии создания RIA-приложений
Пару лет назад появилось новое средство создания клиентских программ, которое не использовало в работе привычные HTML/CSS инструменты, благодаря которым удается создавать и придавать какие-то очертания веб-страницам. Новое средство по виду и работе почти не отличалось от обычных оконных приложений. Называется такое средство Rich Internet Applications (RIA).
И, хотя, данную технологию нельзя назвать новой, так как разработана она была в начале 2000-ч годов. Но широкую огласку RIA получил только несколько лет назад. RIA имеет ряд кардинальных отличий от стандартных средств HTML. Так, например, обычные сайты работают посредством переходов на новые страницы, а также с помощью отправки форм посредством браузера
То есть работа данного сайта построена на клиент-серверном принципе с небольшим клиентским функционалом. При таких условиях HTML, основной задачей которого является отображение документа и поддерживаемый всеми браузерами, является идеальным средством. Данный метод предусматривает постоянные запросы к серверу, что имеет ряд своих недостатков:
- невозможность сохранения клиентских данных при выходе с сайта;
- загрузка сервера баз данных из-за постоянных запросов;
- невозможность пользоваться сайтов при отсутствии интернета.
Что касается RIA, то у неё есть особенность, которая решает проблему постоянного обращения к серверу. В RIA есть та часть программы, которая скачивается непосредственно на пользовательскую машину и содержит в себе данные, отвечающие за работу с сервером, а также интерфейсом клиента. А сохранение данных пользователя после завершения сеанса работы происходит за счет средств RIA. Благодаря кэшированию снижается необходимость обращения к серверу баз данных, что позволяет ускорить работу программы. Проблема отсутствия интернет соединения также решаема.
Так как RIA может также установить приложение на пользовательский ПК, то программа будет находиться на жестком диске, что означает необязательное наличие интернета.
Исходя из этого, можно выделить следующие особенности технологии RIA:
- на пользовательском ПК находится клиентская часть, которая кэширует данные и затем может работать без подключения к интернету;
- для запуска приложения требует установку платформы RIA;
- открывается в отдельном окне;
- стремительное развитие интернета увеличивает популярность данной технологии;
- увеличение популярности таких программ.
На данный момент существует несколько довольно популярных программ такого типа: ORACLE, Silverlight, Adobeflex.
Работа данного приложения происходит следующим образом. Сначала разрабатывается программная часть и дизайн программы, после этого данный код компилируется в Javascript. После этого, данный скрипт запускается на веб-странице и начинается запуск программы. Благодаря этому нет необходимости загрузки дополнительного плагина, хватит только наличие выполнения скриптов. В компиляторе GWT также есть множество средств и библиотек, чтобы создать RIA программы. Стоит также сказать, что сообщество RIA постоянно растет, что дает толчок для развития технологии.
Итак, из всего вышесказанного можно выделить следующие плюсы данной технологии:
- использование javascript;
- поддержка всех браузеров;
- наличие средств отладки;
- наличие модульных тестов;
- вызов программного кода удаленно;
- средства для встраивания кода в уже написанный javascript;
- упрощенная система работы с дизайнерами;
- наличие большой библиотеки;
- возможность загружать сторонние библиотеки.
Недостатки RIA: Обязательное знание Java. Несмотря на огромную популярность этого языка в создании веб-приложений, новичку, не знающему базовых принципов пользовательских интерфесов Swing или AWT, будет крайне сложно.
Кроссбраузерность имеет свои подводные камни. Компоненты пользовательского интерфейса, которые входят в состав дистрибутива, тщательно протестированы и действительно работают одинаково во всех браузерах. Однако сообществом выпускаются новые компоненты, к поведению которых в разных средах следует относиться осторожно. Проблема заключается опыте разработчика.
К недостаткам можно отнести следующее:
- знание языка Java. Хотя данный язык является довольно популярным, у новичков могут возникнуть сложности при написании программного кода на нем;
- поддержка любых браузеров является одновременно как плюсом, так и минусом. Многие программисты выпускают дополнения, которые могут уже не так хорошо отображаться в разных браузерах;
- скорость работы компилятора GWT. Даже небольшая программа компилируется на нем до 2 минут. В современных браузерах, однако, есть возможность запуска приложения без компиляции.
Таким образом, можно сделать вывод о том, что у данной технологии есть ряд преимуществ и в будущем у данной технологии потенциал для роста.
Приложение на Flex/AIR
Что касается программного обеспечения Adobe, то говоря о Adobe Flex нужно сказать, что это утилиты для создания программ на платформе Adobe Flash. Но при всех преимуществах флеш разработки, данный процесс довольно сложен.
Но с помощью Flex трудностей становится меньше, так как разработчику предоставляется программный инструмент создания RIA. Для создания дизайна используется MXML, а для создания программного кода используется Actionscript 3, являющийся эффективным инструментом проектирования работы программы.
Главными преимуществами приложений RIA, созданных во Adobe Flex являются:
- возможность работы в среде Adobe;
- возможность работы во всех операционных системах;
- поддержка работы различных браузеров.
Также стоит сказать, что при технологии AIR, флекс приложения получают доступ к данным клиентского ПК.
Но несмотря на такой доступ, у приложения не будет возможности нанести вред клиентскому оборудованию, так как запускается оно изолированно. Adobe AIR и Flash Player являются бесплатными свободно размещены в сети интернет. И, хотя, Flex является бесплатным продуктом, чтобы воспользоваться всеми функциями программы, будет необходимо купить коммерческую версию. В состав коммерческой версии Flex входит JavaFX, которая является инструментом для создания программ, которые бы взаимодействовали с мультимедией, графическим дизайном, играми на ПК и мобильных устройствах.
Создание приложения JavaFX создается на основе языка JavaFXscript. Код, написанный на данном языке предоставляет доступ к любым библиотекам языка Java. А благодаря одновременному использованию Java и JavaFXscript, у разработчика появляется возможность решения самых разнообразных задач. Также возможно разделение задач по языкам в зависимости от сложности и характерных особенностей поставленной задачи.
Таким образом, основным преимуществом JavaFX является компактность кода и возможность подключения любых библиотек Java.
Недостатки до сих пор остается проблема с запуском на клиентских машинах. JavaFX апплеты не запускаются в браузере Opera, все еще непонятно, что с Linux-системами. Правда это ситуация постепенно исправляется — JavaFX 1.2 по утверждению создателей работает на Ubuntu и OpenSolaris. Приложение Silverlight Краткое описание технологии. Silverlight предоставляет графическую систему, схожую с Windows Presentation Foundation, и объединяет мультимедиа, графику, анимацию и интерактивность в одной программной платформе. Он был создан чтобы работать с XAML и с языками Microsoft .NET. XAML используется для разметки страниц с векторной графикой и анимацией. В состав платформы входит плагин для браузера, который позволяет запускать приложения, содержащие анимацию, векторную графику и аудио-видео ролики, что характерно для RIA.
А главным недостатком является проблема запуска JavaFX скриптов на некоторых браузерах. Также непонятна ситуация с поддержкой Линукс.
Но несмотря на данные минусы, в настоящее время идет исправление недостатков, чтобы этот инструмент стал более глобальным.