Приветствую, уважаемое сообщество!
Сегодня хочу поведать вам о разработке очередного этапа платформы Ленкодо, а именно о языке Рубик и об отладчике Рубика в обозревателе.
Отступление
Данная статья является очень кратким конспектом экрозаписи на ютубе.
Плюс к статье приложена обработка с прототипом отображающего движка отладчика.
Более подробно приложенный прототип рассматривается в экрозаписи.
Рубик
Для разрабатываемой платформы Ленкодо мы добавили синтаксис Рубик.
Рубик можно расшифровать как "Русский бейсик".
Язык с простым базовым синтаксисом, который имеет много общего с 1С и JS синтаксисами.
Рубик является языком, который переводится в js для запуска исполнения в обозревателе и ноде.
На самом деле почти все языки, которые заявляют исполнение в обозревателе, по итогу создают js совместимы код, который в обозревателе и выполняется.
Например, coffeescript, typescript, dart и остальные.
Даже 1Сный веб-клиент целиком и полностью работает в обозревателе через перевод в js язык.
[Экроснимок1. Рубик в JS]
Отладка
Выражения на рубике, загруженные в обозреватель, можно отлаживать.
Отладку мы сделали по знакомым 1Сникам принципам, когда написание кода и отладка выполняются в одном окне.
Отладка Рубика дает следующие плюсы:
*) Привычный способ разработки в одном окне на знакомом синтаксисе;
*) Нет нужности залезать в потроха обозревателя для абсолютного большинства случаев;
*) Возможность подключать мобильные приборы и устройства с обозревателем без usb проводов;
В совокупности это уменьшает порог входа в веб-разработку для работников, которые знакомы с 1Сным языком.
Отладка построена на синхронных http запросах.
Да-да, именно таким же способом выполняется отладка 1Сного веб-клиента.
Для возможности принимать входящие http запросы от обозревателя применяется родная компонента "Приборка", которую мы ранее описывали.
[Экроснимок2. Отладка обозревателя]
Приложенный файл
В приложенном файле находится обработка с ранней версией отображающего движка отладчика.
Эта версия является довольно функциональной и позволяет:
*) Сворачивать и разворачивать области кода;
*) Устанавливать, получать и подсвечивать текущую строку кода;
*) Устанавливать и снимать маркеры "Закладка", "Точка прерывания" и "Текущая строка";
*) Получать полный список маркеров по всему тексту;
*) Получать выделенный текст;
Обработка писалась и проверялась в 8.3.10.
В обработке есть примеры вызова методов.
Сейчас отображение приложено как сверстанный html файл, который можно использовать как образец при написании кодосоздающего алгоритма.
[Экроснимок 3. Прототип отображающего движка отладки]
Остаемся на связи!