Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: LIV Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 29 июня 2017 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Лаппо П.В. СРАВНИТЕЛЬНЫЙ АНАЛИЗ ФРЕЙМВОРКОВ GWT и ANGULAR // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. LIV междунар. студ. науч.-практ. конф. № 6(53). URL: https://sibac.info/archive/technic/6(53).pdf (дата обращения: 28.03.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 17 голосов
Дипломы участников
У данной статьи нет
дипломов

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ФРЕЙМВОРКОВ GWT и ANGULAR

Лаппо Полина Владимировна

студент магистратуры, кафедра информационных систем, Университет ИТМО,

РФ, г. Санкт-Петербург

Термины и определения:

Фреймворк – программная платформа, определяющая структуру программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. [1]

Пользовательский интерфейс – все компоненты интерактивной системы, которые предоставляют пользователю информацию и являются инструментами управления для выполнения определенных задач. [2, c. 3]

Опыт пользователя – восприятие и ответные действия пользователя, возникающие в результате использования и/или предстоящего использования продукции, системы или услуги. [2, c. 3]

Пользовательскому интерфейсу и опыту пользователя уделяется большое внимание, так как они во много определяют успех внедрения или использования того или иного приложения. Для того, чтобы достичь максимального положительного эффекта от внешнего вида приложения, нужно тщательно подойти к вопросу выбора средства реализации этого внешнего вида.

В данной статье будут рассмотрены два фреймворка, которые позволяют создавать одностраничные web-приложения: GWT (Google Web Toolkit) и AngularJS.

GWT – фреймворк, который позволяет писать клиентскую часть приложения на Java с дальнейшей компиляцией в JavaScript. [3]

AngularJS – фреймворк для реализации динамических web-приложений, основанный на расширение html-разметки посредством использования специальных директив. [4]

Начать сравнение стоит с используемого языка программирования.

Разработка приложения, в котором применяется GWT, полностью ведется на Java. Весь интерфейс пользователя строится на основе стандартных виджетов, которых часто не хватает. Для больших возможностей необходимо подключение сторонних библиотек.

При использовании AngularJS клиентская часть приложения реализуется на JavaScript. JavaScript изначально позиционировался, как язык для реализации динамических интерфейсов, а в сочетании в расширенной html-разметкой, его возможности в этой области становятся еще шире.

Принципы работы каждого из фреймворков лучше всего наглядно продемонстрируют рисунки 1 и 2.

 

Рисунок 1. Схема работы GWT

 

Рисунок 2. Схема работы AngularJS

 

На рисунке 1 видно, что существует два варианта просмотра внешнего вида приложения: через компиляцию Java в JavaScript и через использования GWT библиотек и эмуляции внешнего вида приложения. И компиляция, и эмуляция довольно ресурсоемкие операции, и поэтому сборка приложений занимает некоторое время.

На рисунке 2 представлена схема работы Angular приложения. Angular является MVC фреймворком и реализует двухстороннюю привязку данных: при изменении представления изменяется модель и наоборот. После процедуры компиляции на выходе получаем устойчивый DOM, к элементам которого прикрепляются события. Эти события не пропадают из-за обновления или слияния с шаблонов.

Следует так же отметить, что оба фреймворка поддерживаются в актуальном состоянии. На момент написания данной статьи последняя версия GWT выпущена в апреле 2017, а AngularJS в марте 2017.

Сразу можно перейти к такому параметру как ориентированность на разработчика или порог вхождения. Для работы с GWT порог вхождения довольно высок и обязывает разработчика знать Java на довольно высоком уровне. AngularJS же обладает более низким порогом. А тот факт, что при разработке клиентской и серверной части используются различные технологии дают возможность распараллелить процесс разработки.

Так как оба фреймворка направлены на создание одностраничных динамических web-приложений, то они используют в качестве взаимодействия с сервером технологию Ajax. Использование Ajax позволяет улучшить пользовательское восприятие приложения, за счет ускорения реакции интерфейса на действия пользователя, снизить трафик на клиенте и уменьшить нагрузку на сервер.

Выводы

В результате сравнения двух фреймворков можно сказать следующее: оба фреймворка работают с Ajax, имеют актуальные и поддерживаемые версии и позволяют разрабатывать web-приложения.

Но в силу некоторых особенностей, по моему мнению, AngularJS больше подходит для разработки клиентской части web-приложений. Использование JavaScript и реализация двухсторонней привязки данных с применением паттерна MVC позволяет более быстро и качественно разработать приложения с понятными пользовательскими интерфейсами.

Так же низких порог вхождения порог выхождения и использование различных подходов на клиентской и четверной частях приложения позволит выполнять разработку параллельно и независимо друг от друга.

 

Список литературы:

  1. Wikipedia [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Фреймворк (дата обращения: 27.06.2017).
  2. ГОСТ Р ИСО 9241-210 – 2012. Эргономика взаимодействия человек – система. Часть 210. Человеко-ориентированное проектирование интерактивных систем
  3. GWT [Электронный ресурс]. URL: http://www.gwtproject.org/overview.html (дата обращения 27.06.2017).
  4. AngularJS [Электронный ресурс]. URL: https://docs.angularjs.org/guide/introduction (дата обращения 27.06.2017).
Проголосовать за статью
Конференция завершена
Эта статья набрала 17 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.