Прежде чем продолжить цикл статей о плохом и хорошем коде для чайников, хотелось бы чуть более подробно остановиться на том, что из себя представляет ISBL.
Как уже было сказано ранее, ISBL – встроенный в платформу IS-Builder высокоуровневый интерпретируемый язык программирования, предназначенный главным образом для описания алгоритмов решения прикладных задач. Что это значит? В первую очередь то, что внутри системы DIRECTUM на ISBL можно сделать всё (ну или почти всё, поскольку существует такая вещь, как ограничения платформы) при наличии хотя бы небольшого опыта в программировании. Но и отсутствие такого опыта серьёзным препятствием для изучения ISBL не станет: у него несложный синтаксис и развитая документация. Опытных же разработчиков порадует встроенный редактор текста ISBL с развитым CodeInsight и отладчик с возможностью отслеживания длительности выполнения фрагментов кода.
Особенности ISBL
Как всякий уважающий себя язык программирования, ISBL включает в себя поддержку констант, переменных, многомерных массивов, функций, циклов и операторов ветвления. Плюсом ко всему этому прилагается возможность использования COM-объектов, что позволяет программно работать, например, с документами MS Word и Excel, а в последние версии входит библиотека NPOComputer.DocumentProcessing.dll, которую можно применять для работы с документами Open Office и Libre Office.
5 ХУДШИХ языков программирования, которые не стоит учить!
Основной синтаксис
С чего начинается знакомство с новым языком программирования? Разумеется, с его синтаксиса, без знания которого будет затруднительно написать даже классический вывод на экран строки «Hello, world!». И у ISBL, как уже упоминалось, синтаксис довольно прост.
Комментарии
Сам по себе факт наличия такого элемента, как комментарии, вряд ли нуждается в разъяснениях. Комментарии позволяют как раскрыть туманный смысл участка выполняемого кода, так и временно заблокировать его выполнение без удаления. ISBL поддерживает комментарии двух видов:
Типы данных, переменные и константы
Для того, чтобы объявить и инициализировать переменную, в неё достаточно записать любое значение. При этом явно указывать тип данных в большинстве случаев не требуется, так как ISBL поддерживает динамическую типизацию. Это означает, что переменная будет иметь тип, определяемый присваиваемым значением. Указать тип переменной можно и явно (например, для корректной работы CodeInsight), но только если определяемый тип данных не является простым. Ниже перечислены основные типы данных, используемые в ISBL:
-
Числовой. Может принимать целые, дробные и экспоненциальные значения:
Строковый. Может содержать произвольное количество символов, заключённых в кавычки или апострофы:
Константой называется любое постоянное в рамках определённого участка кода значение. В ISBL константы делятся на явные (заданные разработчиком) и системные (зарезервированные имена со строго определёнными значениями). Системные константы – это NULL, nil, FALSE, SYSREQ_NAME и т.д.
АЛЛО, ЭТО ПРИЕМКА? || КАМПУС НИУ МГСУ
Структуры данных
Каждый раз, когда некоторое количество данных, объединённых каким-либо признаком, необходимо сохранить в одном месте, для этого можно и нужно использовать структуры данных. ISBL поддерживает следующие из них:
- Списки IList – набор пар значений ; , где Name – уникальный строковый идентификатор, а Value – значение любого типа. Значения элементов списка можно перебирать в цикле, а можно получать доступ к ним по индексу или по имени.
- Списки строк IStringList – набор строковых значений. Обладает всеми свойствами простого списка, кроме доступа по имени, и позволяет получить значение всех строк, входящих в него, разом через определённый разделитель.
- Массивы – набор значений одного типа. Доступ к значениям осуществляется по индексу или перебором в цикле. ISBL поддерживает как одномерные, так и многомерные массивы, причём количество измерений не ограничено. Для работы с массивами используются следующие встроенные функции:
Подробнее об этих функциях и параметрах, которые они принимают на входе, можно прочесть в справке по ним в компоненте «Функции ISBL».
Операторы
Данные любого типа бессмысленны, если ими нельзя манипулировать: читать, изменять, записывать, создавать и удалять. Для базовой работы с данными в ISBL поддерживаются следующие операторы:
- Арифметические (+, -, *, /);
- Строковые (
- Логические (and, or, not);
- Операторы сравнения (, =, =, <> для чисел и <>, >==, ==, > для строк);
- Оператор присваивания (=).
Помимо этого, в ISBL поддерживаются операторы ветвления и цикла:
-
Условное ветвление:
Цикл по значениям:
Такой цикл можно экстренно прервать, используя ключевое слово exitfor.
А также есть две конструкции для обработки исключений:
Подробнее обработка исключений с их помощью будет разобрана в следующей статье, а пока можно отметить, что разница между ними заключается в том, что вычисления блока except выполняются только при возникновении исключения в блоке try, а вычисления блока finally выполняются всегда, независимо от возникновения исключений в блоке try.
Встроенные функции
Классически, функция в программировании – это именованный блок кода, который может вызываться по своему имени из других частей кода несколько раз. В ISBL есть множество встроенных функций и возможность создания собственных в компоненте «Функции ISBL». Для большинства встроенных функций есть справка, просмотреть которую можно по нажатию Ctrl+F1 из редактора текстов ISBL, установив перед этим курсор на имя функции.
Объекты и объектная модель
Значительным преимуществом ISBL является уже упомянутая выше возможность работы с COM-объектами. Это позволяет обратиться как к объекту, скажем, MS Word из текста вычислений на ISBL, так и к объекту DIRECTUM из текста каких-либо внешних вычислений. Соответственно, с точки зрения разработчика ISBL, все объекты можно поделить на два вида: внутренние, составляющие объектную модель IS-Builder, и внешние, например MS Excel. Каждый объект имеет свой собственный набор свойств и методов для работы с ним. Синтаксис обращения к методам и свойствам объектов в ISBL ничем не отличается от такового в других ЯП:
Внутренняя объектная модель IS-Builder позволяет работать с практически любыми элементами системы DIRECTUM: электронными документами и подписями, записями справочников, задачами, пользователями и даже элементами интерфейса. Подробный список доступных объектов содержится в справке по ссылке: https://club.directum.ru/webhelp/directum/5.5/index.html?om_obekty_directum.htm.
Редактор текста ISBL
Для того, чтобы программисту на ISBL было немного легче и приятнее работать, в IS-Builder есть встроенный редактор текстов на ISBL. От обычного текстового редактора его отличает:
- Подсветка синтаксиса: все элементы исходного кода имеют разное форматирование, что значительно облегчает его восприятие.
- CodeInsight: всплывающие подсказки по именам функций, переменных и констант (Ctrl+Space), аргументам функций и методов (Ctrl+Shift+Space), а также по свойствам и методам объектов.
- Справка по элементам языка, вызываемая по нажатию Ctrl+F1 при курсоре, установленном на элементе.
- Переход в карточку функции (с возможностью последующего перехода к её тексту) по Ctrl+F4 при курсоре, установленном на имя функции.
- Вставка элементов объектной модели IS-Builder: имён реквизитов справочников и электронных документов, кодов типов справочников и записей справочников и т.д. Вставка доступна по соответствующим кнопкам на ленте, на закладке «Вставка».
Отладчик ISBL
Процесс отладки и альфа-тестирования кода на ISBL был бы невыносим без возможности построчного выполнения кода с отслеживанием значений переменных. Такую возможность предоставляет отладчик ISBL – утилита STDbg.exe. Помимо непосредственно отладки он также позволяет анализировать производительность вычислений – на отдельной вкладке «Профилирование» разработчик может посмотреть, сколько времени выполняется любой фрагмент кода, и при получении неудовлетворительных результатов оптимизировать вычисления.
Вместо заключения
Всё вышесказанное представляет собой довольно сжатый обзор возможностей ISBL. Его имеющиеся преимущества, такие как низкий порог вхождения, хорошая документированность и широкие возможности модификации любых систем на базе IS-Builder, делают его практически идеальным инструментом сопровождения этих систем, доступным как «чайникам», так и их более продвинутым коллегам.
Источник: club.directum.ru
Isbl строительство что это
Универсальный англо-русский словарь . Академик.ру . 2011 .
Смотреть что такое «ISBL» в других словарях:
ISBL — ( Information Systems Base Language ) is the relational algebra notation that was invented for PRTV, one of the earliest database management systems to implement E.F. Codd s relational model of data.External links*… … Wikipedia
Relational algebra — Not to be confused with Relation algebra. Relational algebra, an offshoot of first order logic (and of algebra of sets), deals with a set of finitary relations (see also relation (database)) that is closed under certain operators. These operators … Wikipedia
Bénévolat — Le bénévolat est une activité non rétribuée et librement choisie qui s’exerce en général au sein d’une institution sans but lucratif (ISBL) : association, ONG, syndicat ou structure publique. Celui ou celle qui s’adonne au bénévolat est… … Wikipédia en Français
SQL — This article is about the database language. For the airport with IATA code SQL, see San Carlos Airport. SQL Paradigm(s) Multi paradigm Appeared in 1974 Designed by Donald D. Chamberlin Raymond F. Boyce Developer … Wikipedia
IBM Business System 12 — Business System 12, or simply BS12, was one of the first fully relational database management systems, designed and implemented by IBM s Bureau Service subsidiary at the company s international development centre in Uithoorn, The Netherlands.… … Wikipedia
Ball lightning — is an atmospheric electrical phenomenon, the physical nature of which is still controversial. The term refers to reports of luminous, usually spherical objects which vary from pea sized to several meters in diameter. It is sometimes associated… … Wikipedia
Query language — Query languages are computer languages used to make queries into databases and information systems. Broadly, query languages can be classified according to whether they are database query languages or information retrieval query languages. The… … Wikipedia
Projection (relational algebra) — IntroductionIn relational algebra, a projection is a unary operation written as pi ( R ) where a 1. a n is a set of attribute names. The result of such projection is defined as the set obtained when the components of the tuple R… … Wikipedia
Fondation Université de Strasbourg — Informations Fondation 2008 Type Fondation partenariale … Wikipédia en Français
Lightweight Directory Access Protocol — The Lightweight Directory Access Protocol (LDAP; /ˈɛld … Wikipedia
CODASYL — (often spelled Codasyl ) is an acronym for Conference on Data Systems Languages . This was a consortium formed in 1959 to guide the development of a standard programming language that could be used on many computers. This effort led to the… … Wikipedia
Источник: universal_en_ru.academic.ru