Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Сведения о языке Java, необходимые для разработки моделей на AnyLogic




Как мы убедились, AnyLogic позволяет быстро создавать модели из базовых графических компонентов в режиме drag-and-drop. Поэтому простые модели могут быть готовы уже через несколько минут после начала их разработки. Однако разработка реально полезных моделей всегда требует использования в той или иной степени программного кода.

Необходимость использования программного кода является свойством всех инструментов моделирования: в любом из них для разработки серьезной модели требуется писать код на встроенном в этот симулятор языке про­граммирования — либо на специализированном языке, либо на одном из универсальных языков программирования, с которым интегрирован симуля-тор. "Нормальной считается ситуация, когда после 10 минут манипуляции мышкой программист будет 10 часов писать и отлаживать тексты программ, которые придадут модели все желаемые им свойства", — замечает один из экспертов в области имитационного моделирования [ЮТ02]. Некоторые ав­торы считают, что разработчику имитационных моделей абсолютно необхо­димо профессиональное знание программирования: "Работа в области при-кла дной математики без уверенного владения техникой программирования не только бессмысленна, но и опасна (и для общества, и для самого горе-специалиста). К сожалению, в последнее десятилетие увлечение "информационными технологиями" и демагогия о "непрограммирующих пользователях"заметно ухудшили программист-ску ю подготовку будущих математиков и инженеров" [ЮР04].

Конечно, без использования программного кода разработать полезную ими-тационную модель нельзя. Однако вопрос заключается в том, сколько строк кодa нужно писать при разработке модели, насколько сложной является ин­теграция программного кода в среду разработки, до какого уровня разработ­чик моделей, который обычно не является программистом, должен знать тон-кости программирования на базовом языке симулятора и т. п. В AnyLogic базовым языком, совмещенным со средой разработки моделей, является Java.


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

Не пытаясь заменить существующие многочисленные руководства по языку Java, мы очень кратко рассмотрим в этой главе лишь некоторые типы дан­ных, правила синтаксиса, операторы и базовые концепции этого языка, не обходимые для того, чтобы разработчик моделей на AnyLogic яснее понимал возможности данного инструмента и те ограничения (в основном, синтак сические), которые необходимо соблюдать при включении фрагментов Ko гда в модель.

Примитивные типы данных и переменные

В языках программирования используются данные и операции над ними. Данные в Java могут быть примитивными (базовыми, не структурными) и сложными, которые строятся из других типов данных.

Числовые типы

Любая переменная в Java должна иметь объявленный тип. Целые перемен­ные в Java могут быть нескольких типов, но в большинстве моделей для це­лых переменных достаточно использовать только тип int. В Java для вели­чины этого типа на любой платформе отводится 32 разряда, потому целые переменные типа int могут иметь диапазон порядка ±2*109. Целые констан­ты записываются всегда без точки.

Для вещественных переменных наиболее практичным при построении мо­делей является использование типа double, что дает достаточную точность представления.

При построении модели на AnyLogic для вводимых в окне графического редактора переменных и параметров нужно выбрать из выпадающего меню тип — integer, real или boolean, хотя разработчик может использовать любой тип — либо любой из примитивных типов языка Java, либо сложный, определенный пользователем. Типы integer и real в действительности в программе на Java будут представлены как примитивные типы int и double. Названия integer и real используются в AnyLogic для удобства, их можно использовать, только когда они предлагаются в выпадающем меню.


Булевский тип

Использование булевского (boolean) типа очевидно — он применяется все­гда, когда необходимы логические значения ИСТИНА и ЛОЖЬ. Константа­ми булевского типа являются true и false. Если в модели AnyLogic в поле начального значения переменной или параметра булеского типа не стоит никакого значения, это интерпретируется как значение false.

Символьный тип

Константой символьного типа будет любой символ, взятый в одинарные кавычки, например, 'f'' или 'я' В двойных кавычках записываются кон­станты типа строка, т. е. последовательности символов. Частными случаями строки являются пустая строка и односимвольная строка. Константа "Ь" в двойных кавычках — не символьная константа, это односимвольная стро­ка. Символьный тип основан на двухбайтовой кодировке символов Unicode, что позволяет использовать любой символ всех языков мира, в том числе и кириллицу, а также специальные символы. Символы в Unicode наиболее часто выражаются в виде кода из четырех шестнадцатеричных цифр, запи­сывающихся после пары /и. Например в кодировке Unicode символ ™ име­ет вид /и2122. Вставим в окно анимации модели Heart указание на торго­вую марку. Откройте в этой модели окно анимации и вставьте в левом верхнем углу статический текст "Марка", а в поле динамического значения этого текста — в двойных кавычках текст (см. рис. 7.1):

"AnyLogic\u2122"

Запустите модель. Вы увидите, что текст "AnyLogic™" отображается в окне анимации при работе модели. В папке Model Examples\Part II это добавле­ние содержится В модели Heart4.

Кодировки Unicode можно найти на сайте www.unicode.org/charts/.


Переменные

Тип переменной должен быть определен в объявлении переменной до ее использования. В активном объекте при построении модели на AnyLogic это требование удовлетворяется просто — используется кнопка панели инст­рументов для переноса иконки переменной в поле редактора проекта. Пара­метры модели с точки зрения языка Java также являются переменными. До­полнительные переменные объекта могут быть введены также в поле Дополнительный код класса окна Код. Свое окно Код ассоциировано с каж­дым активным объектом, анимацией и т. п.

Имена переменных начинаются с буквы и должны быть последовательно­стью букв или цифр. Заглавные и строчные буквы в именах различаются. Переменные можно объявлять в любом месте в коде Java. Одна и та же пе­ременная не может быть объявлена более одного раза в области ее действия. Слова double, int, boolean и т. п., появляющиеся в тексте Java, являются ключевыми, все они автоматически выделяются редактором синим цветом. Эти ключевые слова Java, как и ключевые слова AnyLogic (например. parent, index и др.), нельзя использовать как имена.

После объявления переменной она должна быть инициализирована. При отсутствии явной инициализации переменной или параметра в AnyLogic им присваивается некоторое значение по умолчанию. Как уже указывалось, для численных типов это 0, для булевского типа — значение false. Инициали­зация может быть выполнена либо отдельным оператором присваивания:

int i; i = 10;

либо непосредственно при объявлении типа:

int i = 10;





Поделиться с друзьями:


Дата добавления: 2018-10-15; Мы поможем в написании ваших работ!; просмотров: 584 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Неосмысленная жизнь не стоит того, чтобы жить. © Сократ
==> читать все изречения...

2329 - | 2038 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.