Авторитетность издания
Добавить в закладки
Следующий номер на сайте
Сравнительный анализ инструментов разработки web-приложений
Аннотация:
Abstract:
Авторы: Масюков В.А. () - , Ивашкин Д.И. () - | |
Ключевое слово: |
|
Ключевое слово: |
|
Количество просмотров: 21874 |
Версия для печати Выпуск в формате PDF (1.13Мб) |
Благодаря повсеместному развитию Интернета, предприятиям и организациям предоставляется удобная возможность информировать потенциальных клиентов о своих товарах и услугах высокоскоростным и экономичным способом, организовав собственный web-сайт. Но так как возможности Интернет-технологии постоянно растут, то в настоящий момент необходимо строить гибкий, управляемый данными и мгновенно реагирующий на изменяющиеся нужды посетителей web-сайт. Рынок программ для создания web-приложений постоянно растет, и часто при создании сайта разработчик приходит в затруднение, выбирая из этого набора необходимое ему средство. Первые средства разработки динамических сайтов, такие как Microsoft Active Server Pages (ASP), PHP (Perl Hypertext Preprocessor, первоначально именовавшийся Personal Home Pages) и Perl, удовлетворяли всем необходимым по тем временам требованиям. Но со временем разработчики web-приложений стали обнаруживать, что многие элементы их web-проекта невозможно реализовать существующими средствами без расширения их функциональных возможностей другими языками программирования путем подключения пользовательских библиотек на C++, VisualBasic и т.д. В результате этого разработчику приходится изучать как минимум два-три языка программирования для реализаций своих идей. Чтобы этого избежать, многие разработчики создают собственные средства разработки web-приложений, специализированные для конкретного web-проекта. В результате этого появились средства разработки web-приложений нового поколения, такие как Cold Fusion фирмы Allaire Corporation, Jagg фирмы BulletProof, LiveWire фирмы Netscape и прочие. Они являются более гибкими и обладают широкими возможностями в построении web-сайтов. Большинство из этих средств работают согласно схеме “маленькая CGI-программа, большой процесс-партнер”[1]. Такой механизм уменьшает накладные расходы, связанные с загрузкой CGI-программы, и позволяет обеспечить высокий уровень переносимости между различными web-серверами. Результаты качественного сравнения наиболее популярных средств разработки web-приложений нового поколения (Cold Fusion, dbWeb, LiveWire, DataRamp) позволили сделать ряд выводов. · Каждое средство разработки обладает собственным языком программирования (часто ориентированным только для web), например: в Cold Fusion язык разметки CFML, а iBasic в dbWeb. Это требует от пользователя дополнительных усилий на изучение нового языка. · Как правило, используемые языки программирования обладают низкими функциональными возможностями и требуют длительного программирования для достижения требуемого результата. Более того, в качестве языка часто используются средства первого поколения ASP (в Dreamweaver UltraDev), PHP либо скриптовые языки JavaScript (в LiveWire), VBScript. · Часто, обладая хорошо развитыми системами сообщений об ошибках, средства не предоставляют механизмов отладки в процессе программирования, таких как пошаговая отладка, точки остановки, просмотр текущего значения простых переменных и сложных вложенных структур. Это резко снижает скорость разработки приложений. · Благодаря совместимости с различными версиями драйверов ODBC, средства обладают возможностью взаимодействовать с различными базами данных (БД). · В отличие от dbWeb и LiveWire, средство Cold Fusion совместимо с любым web-сервером, отвечающим стандарту CGI. · Для корректной работы с web-сайтом клиенту нередко требуется устанавливать на своей машине специальное дополнительное программное обеспечение, например, если web-сайт был разработан при помощи средства DataRamp. · Большинством средств безопасность разрабатываемых web-приложений обеспечивается путем ограничения доступа к БД. Кроме этого, Cold Fusion позволяет ограничить доступ к определенным html\dbml-шаблонам. Но для оценки эффективности средств разработки web-приложений качественного сравнения недостаточно, поэтому необходимо провести количественную оценку функциональных возможностей данных средств. Проведем оценку по следующим характеристикам: операционная система; совместимость с web-серверами; обучение; программируемость; эффективность; поддержка динамического интерфейса (дизайна) разрабатываемых приложений; безопасность; обработка ошибок; средства отладки; сookies; профиль пользователя; возможность работать с ранее созданными локальными приложениями в Интернете; стандартные сервисы; поддержка управления транзакциями. Для оценки были выбраны наиболее популярные средства разработки web-приложений: Cold Fusion [1,2], dbWeb, LiveWire [1] и авторская разработка Д.И. Ивашкина с базовым названием FUAD. FUAD – это средство, созданное по технологии разработки унифицированных приложений TUAD (Technology for unified applications development). FUAD предоставляет следующие возможности. Þ Разрабатываемые web-приложения изначально обладают системой скрытой регистрации клиентов, что позволяет ограничить в любой момент действия определенного клиента. Þ Для каждого клиента ведется динамический профиль, содержащий его последний http-запрос, статистическую информацию, личные настройки и прочее. Þ Внешний интерфейс (дизайн) создается при помощи шаблонной генерации html-страниц, что обеспечивает его высокую динамичность. Шаблоны строятся на основе системных и пользовательских тэгов-вставок. Пользовательские тэги позволяют разработчику самостоятельно задавать способ отображения данных в его приложениях. Þ Для повышения скорости обработки запросов клиентов используется система файлового кэша, позволяющая хранить результаты наиболее часто поступающих и требующих длительной обработки запросов в виде готового файла на диске. При поступлении идентичного запроса клиенту возвращается содержимое соответствующего файла. Þ Технология TUAD позволяет создавать средства разработки web-приложений на различных, удобных для пользователя языках (например, FUAD создано при помощи Delphi). Таким образом, разработанное средство будет использовать для создания web-приложений язык программирования, на котором оно само было создано. Это позволяет создавать web-приложения в таких мощных средах, как Visual C++, Delphi, JBuilder и пользоваться их средствами отладки, что значительно повышает скорость разработки web-приложений. Þ Раннее разработанным локальным приложениям предоставляется возможность функционировать в Интернете, учитывая соглашение, связанное с правилом обмена параметрами. Так как сравниваемые средства позволяют создавать различные виды web-приложений, то для определенных задач некоторые из ранее выбранных характеристик количественной оценки функциональных возможностей играют важную роль, а для других задач они менее важны или в них вообще нет необходимости. Поэтому следует выделить группу задач, решением которых чаще всего приходится заниматься разработчикам, и в зависимости от типа задачи пронормировать функциональные характеристики по степени важности. Для оценки эффективности средства разработки web-приложений используется следующая целевая функция: , при j = 1 .. N (1) где k – задача; j – оцениваемое средство; i – индекс функциональной характеристики оценки; M – количество функциональных характеристик для оценки; N – количество оцениваемых средств; – весовой коэффициент важности i-й функциональной характеристики для k-й задачи; wij – оценка полезности j-го средства относительно i-й функциональной характеристики; – общая эффективность j-го средства для k-й задачи с функциональными характеристиками i = 1..M. Расстановка весовых коэффициентов, характеризующих оценку полезности j-го средства относительно i-й функциональной характеристики () В качестве весовых коэффициентов возьмем пятибалльную систему оценки полезности данного средства относительно указанной характеристики, где: 0 – неприемлемо, то есть средство не располагает такой характеристикой; 1 – плохо; 2 – приемлемо; 3 – хорошо; 4 – очень хорошо; 5 – отлично. Таблица 1 представляет собой совокупность функциональных характеристик, определяющих возможности сравниваемых средств и соответствующие баллы с кратким описанием, которые показывают степень полезности этих средств. Сделав общую оценку всех функциональных характеристик сравниваемых средств, перейдем к частным задачам, расставив для каждой характеристики свой весовой коэффициент в зависимости от степени его важности при решении рассматриваемой задачи. В качестве весовых коэффициентов будем использовать двухбалльную систему оценки значимости i-й характеристики для k-й задачи, где: 0 – необязательная функциональная характеристика; 1 – желательно, чтобы присутствовала; 2 – важная функциональная характеристика. Формулировка задач и расстановка весовых коэффициентов важности i-й функциональной характеристики для k-й задачи () Сегодня наиболее популярной задачей web–программирования является задача создания центра электронной коммерции. Как правило, при решении этой задачи большое внимание уделяют безопасности web-приложения (чтобы клиент не пострадал материально), скорости обработки запросов (так как приходится работать с большими наборами данных) и динамически меняющемуся контенту (содержимое html-страницы) пользователя. В таблице 2 перечислены функциональные характеристики с весовыми коэффициентами для текущей задачи и соответствующие оценки полезности относительно этих характеристик рассматриваемых средств из таблицы 1. Работа с ранее созданными локальным приложениями в сетях Интранет и Интернет. Так как Интернет имеет клиент/серверную архитектуру, он очень удобен для публикации БД. А благодаря тому что клиентская сторона представляет собой броузер, который прост в использовании и независимо от операционной системы (ОС) обладает одинаковым для всех своих версий интерфейсом, он фактически является универсальным клиентом для клиент/серверных приложений. И поэтому организации очень часто внедряют у себя сети Интранет (локальная сеть, использующая протоколы TCP/IP и предоставляющая те же услуги, что и Интернет). Но существующие у них программные продукты, которые они используют для ведения своих дел (например, бухгалтерские приложения), как правило, не обладают возможностью функционировать в Интернете. Поэтому их требуется либо переписывать заново, используя необходимое средство разработки web-приложений, либо прибегать к каким-нибудь другим хитростям. Надо отметить, что при решении такого рода задач требуется учитывать вопросы безопасности, так как приходится работать с конфиденциальной информацией (бухгалтерия и т.д.), рассмотреть вопросы управления транзакциями, контроль ввода и прочие. В таблице 3 перечислены функциональные характеристики с весовыми коэффициентами для текущей задачи и со- ответствующие оценки полезности относительно этих характеристик рассматриваемых средств из таблицы 1. Повышение эффективности работы разработчиков с инструментами web. Для любой организации важным фактором является то, насколько эффективно работают ее сотрудники. Если говорить о разработчиках программных продуктов, то от них требуется высокая скорость и качественное создание необходимых приложений. Поэтому очень важным фактором является то, какие возможности для удобства разработчиков предоставляют сравниваемые средства. Весовые коэффициенты () и оценка полезности инструментов web (wij) для текущей задачи представлены в таблице 4. Анализ результатов Применительно к оценке эффективности четырех типов инструментов web мы рассмотрели три задачи, для каждой из которых существует свой набор функциональных характеристик с соответствующими весовыми коэффициентами из таблиц 2-4. Результаты оценки эффективности этих средств по формуле (1) представлены в таблице 5. Из таблицы 5 следует, что наиболее эффективными являются средства разработки web-приложений FUAD и Cold Fusion. Из этих средств наиболее предпочтительное – FUAD. Если задача, решаемая разработчиком, отличается от рассмотренных выше, то у него имеется возможность самостоятельно задать набор функциональных характеристик из таблицы 1 и расставить необходимые весовые коэффициенты в соответствии с его задачей. Подставив данные в (1), он сможет выбрать наиболее эффективное для решения его задачи средство разработки web-приложений. Список литературы 1. Курт Ланг, Джефф Чоу. Публикация баз данных в Интернете. - СПб.: “Символ”, 1998. 2. Ричард В. Дрейган, Тимоти Дик, Ларри Дж. Зельцер. Инструменты разработки Web: подняться на отметку выше // PC Magazine/RE.- № 6. - 2001. |
Постоянный адрес статьи: http://swsys.ru/index.php?page=article&id=701&lang= |
Версия для печати Выпуск в формате PDF (1.13Мб) |
Статья опубликована в выпуске журнала № 2 за 2002 год. |
Возможно, Вас заинтересуют следующие статьи схожих тематик:
- Целесообразность применения web-служб в распределенных автоматизированных системах военного назначения
- Подход к выбору оптимального маршрута при перевозке крупногабаритных грузов на основе нейросетевых технологий
- Правовая охрана программного обеспечения с точки зрения международного сотрудничества стран-членов СЭВ
- Компьютерные технологии сегодня: тенденции и прогнозы
- Комплекс автоматизированного проектирования геотехнических сооружений "КАППА"
Назад, к списку статей