Привет! Я учусь в одном из лучших вузов нашей страны. Я учусь в НГУ (Новосибирский Государственный Университет)!



В октябре 2015 года компания InterSystems в рамках академической программы провела два обучающих курса по технологиям InterSystems Cache:
— «Ensemble. Разработка»,
— «DeepSee. Основы».

Ранее, весной 2015, мы прошли еще один обучающий курс от InterSystems:
— «Разработка приложений в объектно-реляционной среде».

Какие трудности возникли у нас, как у начинающих Cache ObjectScript разработчиков и о том, как мы их решили, я и буду рассказывать в этой статье. Надеюсь, данный материал может пригодиться и другим начинающим COS-разработчикам! Я хочу показать, что программирование на Cache ObjectScript это совсем не страшно, а иногда даже удобно! (Осторожно, много картинок)

Благодарности


От лица слушателей, успешно прошедших обучающие курсы, хотелось бы выразить отдельную благодарность организаторам и преподавателям этих курсов!

Благодарим Шварова Евгения, директора академических программ, за организацию и реализацию обучающих курсов со стороны InterSystems!

Отдельно благодарим Пищика Бориса Николаевича (старший научный сотрудник КТИ СО РАН, заведующий кафедрой «Компьютерных систем» ФИТ НГУ) за организацию и реализацию обучающих курсов со стороны НГУ, а также за оперативную помощь в решении административных вопросов!

Выражаем нашу благодарность преподавателям этих курсов!

Благодарим Погребникова Александра Константиновича, преподавателя курса «Ensemble. Разработка», за доступно изложенный материал а также неоценимую помощь в решении возникавших проблем во время обучения!

Благодарим Дмитровича Олега Игоревича ( doublefint ) за доступно изложенный материал, а также наглядные жизненные примеры, которые позволили нам более качественно понять смысл, возможности и потенциал изучаемых технологий!

Благодарим Зеленина Антона Юрьевича за доступно изложенный материал, а также за многочисленные практические примеры работы с языком Cache ObjectScript и сопутствующими технологиями!


Содержание


Проблема 1. Установка
  Вопрос 1.1. Путь
  Вопрос 1.2. Системный пользователь
Проблема 2. Начало работы
  Вопрос 2.1. Старт
  Вопрос 2.2. Авторизация в студии
  Вопрос 2.3. Настройка пользователя
Проблема 3. Hello world
  Вопрос 3.1. Проект
  Вопрос 3.2. Запуск
Заключение


^ Проблема 1. Установка


И хотя установка Cache проходит достаточно прозрачна, всё же возникают некоторые вопросы касательно установки.


^ Вопрос 1.1. Путь

— Можно ли ставить Cache в директорию, содержащую пробельные символы в своем названии?
— Да, можно. Однако, насколько мне известно, компания InterSystems рекомендует устанавливать Cache так, чтобы путь до директории установки не содержал пробельных символов.


^ Вопрос 1.2. Системный пользователь

— Почему меня просят указать пароль для какого-то системного пользователя? Я же просто ставлю среду разработки?!
— На самом деле, устанавливая Cache, Вы устанавливаете не просто среду разработки, а целую «экосистему», которая нуждается в настройке безопасности и конфиденциальности. Этот пароль, который необходимо указать, — это пароль системного пользователя, грубо говоря, администратора этой экосистемы.


^ Проблема 2. Начало работы


Хорошо, мы установили Cache. А что дальше? Как запустить? С чего начать?

Среди инструментов, что доступны после установки, основными можно считать следующие:
— «Cache Terminal»,
— «Cache Studio»,
— «Cache Management Portal».

«Cache Studio» — это и есть IDE (среда разработки), основной инструмент разработки на Cache ObjectScript.

Cache Terminal — небольшой командный интерфейс к Cache. В терминале можно вводить команды и видеть результаты их исполнения. Терминал, по своей сути, это REPL (Read-Eval-Print Loop).

«Cache Management Portal» — средство мониторинга и управления Cache с помощью веб-интерфейса.


^ Вопрос 2.1. Старт

— Ладно, как мне начать писать код?
— Для этого нужно открыть студию, выбрать область, создать проект, и начать работать над классами.


^ Вопрос 2.2. Авторизация в студии

— Я открыл студию, а там спрашивают логин и пароль. Что туда вводить?
картинка


— Нужно ввести логин и пароль пользователя, известного Cache. На данном этапе есть два варианта: правильный и нежелательный.
  Нежелательный вариант заключается в том, что Вы можете ввести ваш логин в операционной системе Windows, а пароль тот, что Вы указали для системного пользователя в процессе установки.
  Правильный вариант, потребует немного больше усилий, но зато обезопасит вас от критических последствий, которые могли бы произойти, если бы что-то пошло не так, пока Вы залогинены под аккаунтом, с таким обширным набором прав и привилегий.

В дальнейшем, «пользователем» я буду обозначать пользователя Cache, логин которого совпадает с логином вашего пользователя операционной системы.


^ Вопрос 2.3. Настройка пользователя

— Как настроить пользователя?
— Правильный путь состоит из нескольких шагов. Считаю, что прежде всего необходимо сменить пароль пользователя, потом, понизить права и привилегии, а далее настроить область для дальнейшей работы.

Для этого необходимо открыть Cache Management Portal, сделать это можно, например, через «Пуск панель» или через трейбар.

Способ 1. Пуск панель
Пуск -> Все приложения -> Cache (запускаем портал).



Способ 2. Трейбар
Находим иконку Cache и запускаем портал.




После того, как мы запустим портал нас встретит система контроля безопасности Cache.
картинка


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


Теперь нужно открыть страницу управления пользователями.
картинка


На странице управления пользователями представлен список пользователей. Найдите там своего. Это сделать достаточно легко, если обратить внимание на столбец «Полное имя», у вашего пользователя в этом столбце должен быть комментарий, что именно он устанавливал Cache. Как можно увидеть на картинке, мой пользователь, — jxcoder.
картинка


Если кликнуть на логин вашего пользователя, то перед вами откроется страница редактирования информации о пользователе.
картинка


Укажите новый пароль пользователя.
картинки




Укажите область USER для своих будущих проектов и данных.
картинка


Нажмите кнопку «Сохранить».

Перейдите на вкладку «Роли». Сейчас у вашего пользователя есть одна всемогущая роль: %All.
На первых порах работы с Cache, вам хватит и более простой роли: %Developer.
картинки








Давайте теперь посмотрим, что же у нас получилось. Выйдите из портала нажав кнопку «Выход» в верхней части веб-интерфейса.

Перед вами снова откроется форма авторизации. Введите свой логин и новый, указанный вами, пароль. После входа в портал обратите внимание, что административные функции вам недоступны.
картинка


Роль %Developer позволяет вам выполнять все необходимые во время разработки и отладки действия.
картинка




^ Проблема 3. Hello world


При знакомстве с любым языком программирования, первое, что хочется попробовать, — это написать программу, которая выводит на экран «Hello world!».

Для этого необходимо открыть Cache Studio (через трейбар или «Пуск панель»). Когда Cache Studio запустится, то вас снова спросят логин и пароль. Укажите те же данные, что Вы использовали для входа на портал. После этого, вас спросят какую область Вы хотите использовать для своих проектов. Выбираем область USER.


^ Вопрос 3.1. Проект

— Хочу написать Hello World! С чего мне начать?
— Начните с проекта. Откройте Cache Studio (через трейбар или «Пуск панель») и создайте проект! Можете назвать его HelloWorld.prj.
картинки






На самом деле, Вы всегда работаете в некотором проекте, даже если явно и не создавали его. Однако, если говорить о хорошем тоне, то проект с осмысленным названием, всё же стоит создать.
Теперь надо создать класс, в котором и будет содержаться тело программы «Hello World».
картинка


В появившемся окне укажите следующие данные о классе:
Пакет: HelloWorld
Имя: Main
картинка


Нажмите кнопку «Finish» и сохраните проект (File -> Save All).
Теперь мы можем приступить к написанию программы Hello World.

Поместите следующий код в файле Main.cls:
Class HelloWorld.Main
{
    // Статический публичный метод main
    ClassMethod main()
    {
        // Вывести на экран строку "Hello World!"
        write "Hello World!"
    }
}


Теперь необходимо скомпилировать проект (Build -> Rebuild All). Наша программа Hello World готова!


^ Вопрос 3.2. Запуск

— Я написал программу Hello World! Как мне её запустить?
— Откройте Cache Terminal (через трейбар или «Пуск панель»). Вас снова попросят авторизоваться. Введите уже знакомые вам логин и пароль. Обратите внимание, что после входа, Вы оказались в области USER.
картинка


Для запуска программы введите в терминале следующую команду:
do ##class(HelloWorld.Main).main()

После выполнения этой команды, вы должны заметить появление на экране строки «Hello World!».
картинка


Данная команда буквально означает запустить метод main класса Main, который находится в пакете HelloWorld. Обратите внимание, что имена пакетов, классов и методов являются регистрозависимыми.

Вот и всё!


^ Заключение


В данной статье я ответил на несколько самых простых, но очень типичных вопросов начинающих Cache ObjectScript разработчиков.

В заключении хотелось бы указать ресурсы, которые могут оказаться полезными для начинающих разработчиков:

Комментарии (1)


  1. Yak52
    05.11.2015 08:43
    +1

    Раз уж тут про Cache и Новосибирск, то напомню, что в нашем городе 12 ноября проходит второй InterSystems Meetup