Лекция 13. Синтаксис Avenue Харитонов А. Ю. Министерство образования и науки Украины Донецкий национальный технический университет Кафедра компьютерных.

Презентация:



Advertisements
Похожие презентации
Лекция 12. Основы Avenue Харитонов А. Ю. Министерство образования и науки Украины Донецкий национальный технический университет Кафедра компьютерных систем.
Advertisements

Лекция 14. Базовые элементы Харитонов А. Ю. Министерство образования и науки Украины Донецкий национальный технический университет Кафедра компьютерных.
Переменные и операторы УРОК 2. Переменные ПЕРЕМЕННАЯ – ?... контейнер для хранения данных. Переменная имеет имя – это….? последовательность букв, цифр.
Объектно-ориентированный язык программирования. Переменная - эта поименованная ячейка памяти, хранящая какое-либо одно значение (одно число, один фрагмент.
Глава 6. УПРАВЛЯЮЩИЕ СТРУКТУРЫ Оператор присваивания Простой и составной операторы Условный оператор Оператор множественного выбора Оператор цикла с предусловием.
Операторы языка Си Лекция 5.
Министерство образования Республики Беларусь Белорусский государственный университет Управляющие структуры языков программирования.
ЦИКЛИЧЕСКИЙ АЛГОРИТМ Цели: -Познакомиться с понятием циклического алгоритма. -Освоить языковые средства для реализации циклических алгоритмов.
Операторы. Оператор выбора Оператор выбора Оператор выбора Оператор выбора Оператор присваивания Оператор присваивания Оператор присваивания Оператор присваивания.
Тема: Управление потоком в PHP Изучить возможности языка PHP при решении задач, требующих использования условного оператора. Рассмотреть примеры управления.
Лекция 3 Операторы Цикла 1 Российский государственный университет нефти и газа имени И.М. Губкина Кафедра «Информатики»
ЦИКЛЫ ОПРЕДЕЛЕНИЕ, ВИДЫ, ПРИМЕРЫ. ОПРЕДЕЛЕНИЕ Группа этапов, повторяющаяся в процессе решения задачи несколько раз, называется циклом или циклическим.
1 Лекция 13 ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКА Visual Basic For Applications (VBA) План лекции Типы данных VBA Операции над данными VBA Описание типов данных VBA Имена.
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Операторы языка. Арифметические операторы Арифметические операторы Арифметические операторы Арифметические операторы Операторы сравнения Операторы сравнения.
Домашнее задание ЕГЭ ДЕМО А13 НАЧАЛО ПОКА вниз ПОКА влево ПОКА вверх ПОКА вправо КОНЕЦ 1) 1 2) 2 3) 3 4) 4.
Программирование на Pascal.
Повторение действий в turbo pascal. Циклы.
Программирование Задания В2, В5. Оператор присваивания в языке программирования Задание В2 – базовый уровень, время – 2 мин.
ОСНОВНЫЕ ЭЛЕМЕНТЫ БЛОК-СХЕМ Основные геометрические фигуры языка блок-схем, широко используемого для описания небольших алгоритмов.
Транксрипт:

Лекция 13. Синтаксис Avenue Харитонов А. Ю. Министерство образования и науки Украины Донецкий национальный технический университет Кафедра компьютерных систем мониторинга ГЕОИНФОРМАЦИОННЫЕ СИСТЕМЫ

2 Порядок выполнения запросов- - слева направо. Заключенное в скобки выражение оценивается как единый элемент. Арифметические операторы также подчиняются правилу выполнения слева направо - слева направо. Заключенное в скобки выражение оценивается как единый элемент. Арифметические операторы также подчиняются правилу выполнения слева направо x = * 6 x = * 6 x = 3 + (5 * 6) x = 3 + (5 * 6) © Харитонов А. Ю.

3 Соглашения об именах запросов Большинство имен запросов Avenue имеет формат (действие, предмет или субъект), например GetProject, FindScript, AddDoc, и SetValue, где Get, Find, Add и Set являются действиями, а Project, Script, Doc и Value - субъектами. Действие идентифицирует роль и поведение запроса. Субъект разъясняет и определяет запрос. Общие ключевые слова действия именуют запросы через иерархию классов. Большинство имен запросов Avenue имеет формат (действие, предмет или субъект), например GetProject, FindScript, AddDoc, и SetValue, где Get, Find, Add и Set являются действиями, а Project, Script, Doc и Value - субъектами. Действие идентифицирует роль и поведение запроса. Субъект разъясняет и определяет запрос. Общие ключевые слова действия именуют запросы через иерархию классов. © Харитонов А. Ю.

4 Соглашения об именах запросов Функция Add добавляет объект в цель (target) запроса. Функция Add добавляет объект в цель (target) запроса. myList.Add( "Illinois" ) myList.Add( "Illinois" ) Функция As возвращает версию объекта, преобразованного в иной тип. Функция As возвращает версию объекта, преобразованного в иной тип. x = "56789".AsNumber x = "56789".AsNumber Функция Can возвращает утверждение true (истина) или false (ложь), если функция может быть выполнена. Функция Can возвращает утверждение true (истина) или false (ложь), если функция может быть выполнена. File.CanDelete( "$MYDATA/states.dbf".AsFileName ) File.CanDelete( "$MYDATA/states.dbf".AsFileName ) Функция Find возвращает ссылку для поименованного объекта. Функция Find возвращает ссылку для поименованного объекта. myView = av.GetProject.FindDoc( "View1" ) myView = av.GetProject.FindDoc( "View1" ) © Харитонов А. Ю.

5 Соглашения об именах запросов Функция Get возвращает ссылку на другой связанный объект. В отличии от Get функция Return выдает ссылку на новый объект. Функция Get возвращает ссылку на другой связанный объект. В отличии от Get функция Return выдает ссылку на новый объект. themeList = myView.GetThemes themeList = myView.GetThemes theProject = av.GetProject 'gets a reference to the active project. theProject = av.GetProject 'gets a reference to the active project. Функция Has возвращает true, если объект включен или имеет указанное условие или состояние. Запрос HasError наиболее общий. Ниже запрос HasError определяет корректность созданного нового объекта текста программы (скрипта). Функция Has возвращает true, если объект включен или имеет указанное условие или состояние. Запрос HasError наиболее общий. Ниже запрос HasError определяет корректность созданного нового объекта текста программы (скрипта). myScript = Script.Make( "av.minimize" ) myScript = Script.Make( "av.minimize" ) if (myScript.HasError) then if (myScript.HasError) then MsgBox.Error( "Script failed to make", "") MsgBox.Error( "Script failed to make", "") end end © Харитонов А. Ю.

6 Соглашения об именах запросов Функция Is возвращает true или false, указывая значение Логического (Boolean) параметра или состояния. Функция Is возвращает true или false, указывая значение Логического (Boolean) параметра или состояния. theFile = "$MYDATA/test".AsFileName theFile = "$MYDATA/test".AsFileName if (theFile.IsDir) then if (theFile.IsDir) then … … end end Функция Make создает новый экземпляр целевого класса. Функция Make создает новый экземпляр целевого класса. aView = View.Make aView = View.Make Функция Return создает новый объект и возвращает ссылку на него. Функция Return создает новый объект и возвращает ссылку на него. myView.ReturnExtent myView.ReturnExtent aLine.ReturnCenter aLine.ReturnCenter Функция Set присваивает новое значение для объекта или свойства целевого объекта. Функция Set присваивает новое значение для объекта или свойства целевого объекта. aDoc.SetGUI(aGUIName) ' Документу назначается GUI с именем aGUIName aDoc.SetGUI(aGUIName) ' Документу назначается GUI с именем aGUIName aButton.SetIcon(anIcon) 'задается значок для кнопки aButton.SetIcon(anIcon) 'задается значок для кнопки © Харитонов А. Ю.

7 Оператор присваивания Assignment Оператор присваивания вызывает переменную для ссылки на связанный объект. Переменная создается при ее написании слева от оператора присваивания. Справа от оператора задается объект, на который производится ссылка. Оператор присваивания вызывает переменную для ссылки на связанный объект. Переменная создается при ее написании слева от оператора присваивания. Справа от оператора задается объект, на который производится ссылка. Переменная (variable) = Объект (Object) Переменная (variable) = Объект (Object) Имя переменной начинается с буквы или знака подчеркивания, содержит буквы и цифры и не зависит от регистра. Если имя переменной начинается со знака подчеркивания, то переменная является глобальной. Действие глобальной переменной распространяется на все скрипты проекта, в то время как действие локальной переменной ограничено пределами скрипта, которому она присвоена. Имя переменной начинается с буквы или знака подчеркивания, содержит буквы и цифры и не зависит от регистра. Если имя переменной начинается со знака подчеркивания, то переменная является глобальной. Действие глобальной переменной распространяется на все скрипты проекта, в то время как действие локальной переменной ограничено пределами скрипта, которому она присвоена. Имя переменной должно быть уникальным. Имя переменной должно быть уникальным. theView = av.GetActiveDoc theView = av.GetActiveDoc © Харитонов А. Ю.

8 Оператор If...Then...Else if ( выражение1 ) then if ( выражение1 ) then блок запросов1 блок запросов1 elseif ( выражение2 ) then elseif ( выражение2 ) then блок запросов2 блок запросов2 [else] [else] блок запросов3 блок запросов3 end end © Харитонов А. Ю.

9 Оператор For Each Оператор For Each применяет набор запросов к элементам множества. Оператор For Each применяет набор запросов к элементам множества. for each переменная in множество [ by шаг ] for each переменная in множество [ by шаг ] блок запросов блок запросов end end for each i in for each i in MsgBox.Info( i.AsString, "") MsgBox.Info( i.AsString, "") end end Эта переменная является итерационной переменной. Она получает значение каждого элемента в множестве. При каждом выполнении цикла переменная получает следующее значение. В приведенном примере I является итерационной переменной и она последовательно получает значения 1, 2, 3, 4, …, 99, 100, изменяя значения при каждом цикле процесса. Каждый цикл for each выполняется 100 раз. Эта переменная является итерационной переменной. Она получает значение каждого элемента в множестве. При каждом выполнении цикла переменная получает следующее значение. В приведенном примере I является итерационной переменной и она последовательно получает значения 1, 2, 3, 4, …, 99, 100, изменяя значения при каждом цикле процесса. Каждый цикл for each выполняется 100 раз. © Харитонов А. Ю.

10 Оператор While Оператор While повторяет выполнение блока запросов, пока заданное выражение остается истинным (true). Убедитесь, что цикл while обеспечивает условия завершения, иначе Вы получите бесконечный цикл. Оператор While повторяет выполнение блока запросов, пока заданное выражение остается истинным (true). Убедитесь, что цикл while обеспечивает условия завершения, иначе Вы получите бесконечный цикл. while ( выражение ) while ( выражение ) блок запросов блок запросов end end Блок запросов может выполняться один раз, много раз, или не выполняться совсем. Блок запросов может выполняться один раз, много раз, или не выполняться совсем. while (msgbox.yesno("Run the script again?","ArcView",TRUE)) while (msgbox.yesno("Run the script again?","ArcView",TRUE)) av.Run("TestScript",nil) av.Run("TestScript",nil) End End Оператор Break прекращает выполнение ближайшего оператора For Each или While, в который он вложен. Оператор Break прекращает выполнение ближайшего оператора For Each или While, в который он вложен. © Харитонов А. Ю.

11 Оператор Continue Оператор Continue управляет переходом к следующей итерации цикла, в котором он встречается, с пропуском всех остальных операторов в этом цикле. Оператор Continue управляет переходом к следующей итерации цикла, в котором он встречается, с пропуском всех остальных операторов в этом цикле. theView = av.GetActiveDoc theView = av.GetActiveDoc for each t in theView.GetThemes for each t in theView.GetThemes for each f in t.GetFtab.GetFields for each f in t.GetFtab.GetFields if (f.IsTypeNumber) then if (f.IsTypeNumber) then continue continue end end f.SetVisible(true) f.SetVisible(true) end end t.GetFtab.Refresh t.GetFtab.Refresh End End В данном примере скрипт проверяет каждое поле каждой темы в Виде, делая все нечисловые поля скрытыми (невидимыми). Скрипт использует оператор Continue, чтобы перейти к следующему полю в списке полей, если текущее поле является числовым, тем самым пропуская запрос SetVisible. В данном примере скрипт проверяет каждое поле каждой темы в Виде, делая все нечисловые поля скрытыми (невидимыми). Скрипт использует оператор Continue, чтобы перейти к следующему полю в списке полей, если текущее поле является числовым, тем самым пропуская запрос SetVisible. © Харитонов А. Ю.