ISSN 1991-3087
Рейтинг@Mail.ru Rambler's Top100
Яндекс.Метрика

НА ГЛАВНУЮ

Технологии проектирования в сравнительном эксперименте

 

Казаков Антон Сергеевич,

магистрант Уральского федерального университета: Института математики и компьютерных наук.

Научный руководитель – доцент

Стихина Татьяна Кабдешевна.

 

В работе исследуются возможности технологий Hibernate, Tapestry, MySQL для построения эффективных решений на основе сохранения, обработки, доступа к информации через интернет-ресурсы. Рассмотрим основные продукты.

Hibernateбиблиотека компонентов для языка программирования Java, решающая задачи объектно-реляционного отображения. Лёгкий в использовании каркас для отображения объектно-ориентированной модели данных в традиционные реляционные базы данных и есть основное преимущество данной библиотеки.

Tapestryобъектно-ориентированный Java каркас для создания web-приложений. Позволяет работать с web-частью приложения, как с объектом Java. Организация событийной работы приложения позволяет упростить приложение и не нагружать страницу js-скриптами.

В итоге, эти две библиотеки в связке с Java позволяют построить полноценную систему, работающую как web-приложение, сводя к минимуму низкоуровневую работу программиста, позволяя сосредоточиться на стратегических аспектах разработки.

Для решения практической задачи: обеспечение удобной среды для проведения тестового контроля учащихся, ранее исследовались иные технологии. А именно связка базы данных на основе MS SQL Server и С#, где был также реализован работоспособный вариант проекта.

Новое приложение, работающее как on-line приложение, позволяет не зависеть от географического фактора, и позволяет обучать и обучаться дистанционно.

Разработка приложения велась средствами Eclipse Java EE IDE for Web Developers и MySQL Workbench. Выбор пал именно на эти приложения, потому что: первоесвободная кроссплатформенная среда разработки на Java, в данной версии упрощающая разработку web-приложений; а второеудобный, и тоже кроссплатформенный, инструмент для визуального проектирования баз данных, интегрирующий проектирование, моделирование, создание и эксплуатацию БД в единое бесшовное окружение для системы баз данных MySQL. Основаниями для выбора данной СУБД послужили:

·                    многопоточность, поддержка нескольких одновременных запросов;

·                    оптимизация связей с присоединением многих данных за один проход;

·                    ODBC драйвер;

·                    быстрая работа, масштабируемость;

·                    бесплатность в большинстве случаев.

Использование этих сред разработки в совокупности с Tapsetry и Hibernate позволило использовать все преимущества данных библиотек.

Результатом работы стало приложение, имеющее широкий спектр возможностей: для студентов (выбор и сдача теста; просмотр и печать результатов), для преподавателей (создание новых учебных курсов, разделов, тестов и вопросов для них; просмотр и печать журнала с результатами, с возможностью выборки по студенту, курсу, разделу, тесту; анализ знаний, посредством ведения статистики ответов на каждый вопрос; возможность «открыть» тест на промежуток времени, который необходим студентам, чтобы сдать его).

Рассмотрим основные элементы системы: база данных, пользователи, рабочие окна.

Как видно из данных схем (рис. 1, рис. 2) структуры БД в приложениях имеют немного различий, помимо некоторой оптимизации. Главное их отличие в том, что первая была создана вручную, при помощи SQL-запросов, а вторая средствами Hibernate, когда создавались Java-классы, затем автоматически перенесенные в типы данных SQL.

 

Рис. 1. Пример схемы сгенерированной MS SQL.

 

Рис. 2. Пример схемы сгенерированной Hibernate.

 

В обеих версиях приложения существует три категории пользователей: студент, преподаватель и администратор. Но, если в первом варианте все пользователи работали напрямую с БД, то во втором доступ к ней имеет только администратор, а студенты и преподаватели контактируют с базой только через прослойку Tapestry-Hibernate. Новое приложение стало браузерным, также изменился и сам интерфейс (рис. 3, рис. 4). Проведено usability-тестирования. По его результатам строился новый интерфейс при помощи средств Tapestry.

 

Рис. 3. Пример экранной формы, построенной средствами C#.

 

Рис. 4. Пример экранной формы, построенной средствами Tapestry.

 

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

 

Литература

 

1.                  Christian Bauer, Gavin King. Hibernate In Action. 2005 by Manning Publications Co.

2.                  Howard M. Lewis Ship. Tapestry In Action. 2004 by Manning Publications Co.

3.                  http://hibernate.org/.

4.                  http://tapestry.apache.org/.

 

Поступила в редакцию 11.02.2013 г.

2006-2019 © Журнал научных публикаций аспирантов и докторантов.
Все материалы, размещенные на данном сайте, охраняются авторским правом. При использовании материалов сайта активная ссылка на первоисточник обязательна.