Применение технологий Java и JavaFX для разработки виртуальных лабораторий математического моделирования

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

?ории Института математических проблем биологии РАН и Астраханского государственного университета "Математическое моделирование и информационные технологии в науке и образовании" (

 

.1 Принцип работы апплета

 

Java-апплет - прикладная программа на Java в форме байт-кода. Java-апплеты выполняются в веб-обозревателе с использованием виртуальной Java машины (JVM), или в Suns AppletViewer, автономном инструменте для тестирования апплетов. Java-апплеты были внедрены в первой версии языка Java в 1995. Java-апплеты пишутся на языке программирования Java, но могут быть написаны и на других языках, которые компилируются в байт-код Java, таких, как Jython.

Апплеты используются для предоставления интерактивных возможностей веб-приложений, которые не могут быть предоставлены HTML (HyperText Markup Language - язык разметки гипертекста). Так как байт-код Java платформо-независим, то Java-апплеты могут выполняться веб-обозревателями многих операционных систем, включая Microsoft Windows, UNIX, Apple Mac OS и GNU/Linux.

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

Код апплета загружается с веб-сервера, и веб-обозреватель либо вставляет апплет в веб-страницу, либо открывает новое окно с собственным пользовательским интерфейсом апплета.

Преимущества апплетов:

Кроссплатформенность;

апплет может работать на "всех" установленных к этому времени версиях Java, а не только с последней версией;

апплет поддерживается большинством веб-обозревателей;

он кэшируется в большинстве веб-обозревателях, а потому будет быстро загружаться при возвращении на веб-страницу;

он может иметь полный доступ к машине, на которой выполняется, если пользователь согласен на это;

он может перенести работу с сервера к клиенту, делая работу с приложением в сети Интернет удобным и быстрым, даже с большим числом пользователей / клиентов;

В связи с тем, что для визуализации выходных данных, а также создания пользовательского интерфейса мною используется технология JavaFX, то для запуска в веб-обозревателе апплета такого типа необходимо использовать технологию Java Web Start, которая имеет ряд отличий от апплетов. Java Web Start (часто JavaWS) - технология компании Sun Microsystems, позволяющая запускать приложения на Java из веб-обозревателя. Основана на протоколе Java Network Launching Protocol (JNLP). В отличие от апплетов, приложения Web Start могут запускаться не в окне веб-обозревателя и не имеют с ним прямой связи.

Различия между Java Web Start и апплетами[8]:

Технология Java Web Start используется для доставки обычных приложений, написанных на языке Java и начинающихся с вызова метода main, содержащегося в одном из классов;

Приложения, созданные с помощью технологии Java Web Start, не запускаются внутри веб-обозревателя. Они отображаются вне веб-обозревателя;

Приложения, созданные с помощью технологии Java Web Start, можно запустить с помощью веб-обозревателя, однако механизм, лежащий в основе этого процесса, совершенно отличен от запуска апплетов. Технология Java Web Start гораздо самостоятельнее. Веб-обозреватель просто запустит внешнюю программу, как только загрузит дескриптор приложения, созданного с помощью технологии Java Web Start;

После загрузки приложения, созданного по технологии Java Web Start, оно запускается вне веб-обозревателя;

Технология Java Web Start обеспечивает более мощную поддержку кэширования и автоматического обновления программ по сравнению с технологией Java Plug-In;

Механизм "песочниц" в технологии Java Web Start более гибок и позволяет неподписанным приложениям получать доступ к локальным ресурсам;

 

2.2 Описание алгоритма программы на примере модели межвидовой конкуренции

 

В качестве апробации выбранных в курсовой работе решений и технологий для разработки виртуальной лаборатории математического моделирования была выбрана модель межвидовой конкуренции Вольтера-Лотки. Данная модель описывает динамику развития численности конкурирующих популяций, потребляющих один и тот же ресурс на замкнутой территории. Примером такой системы могут служить стадо коз и стадо овец, пасущихся на одном и том же лугу. Динамика численности видов определяется следующей системой (3.1):

 

, (2.1)

 

где - численность 1-го вида, - численность 2-го вида, - коэффициент прироста 1-го вида, - коэффициент прироста 2-го вида, - коэффициент, описывающий внутривидовое влияние 1-го вида, - коэффициент, описывающий внутривидовое влияние 2-го вида, - коэффициент, описывающий влияние со стороны 1-го вида, - коэффициент, описывающий влияние со стороны 2-го вида.

Пользовательский интерфейс представлен на рисунке 3.1:

 

Рис. 3.1. Пользовательский интерфейс модели межвидовой конкуренции.

На нем представлены следующие элементы:

Заголовок с названием модели и соответствующей системой;

Поля для ввода данных (TextBox) с помощью ползунков (ScrollBar);

Командная кнопка "Рисовать" (Button);

Режим дорисовки (CheckBox);

Панели для графика и ф?/p>