Разработка и Конфигурация · 11 мин
Кто создал язык программирования 1С
Кто создал язык программирования 1С: роль Бориса Нуралиева и фирмы 1С, история платформы, особенности встроенного языка и его развитие.
Язык программирования 1С — это встроенный язык платформы «1С:Предприятие», созданный внутри российской фирмы «1С». Его нельзя приписать одному человеку, как это часто делают с C++ или Python: язык разрабатывался коллективом компании как часть единой платформы для автоматизации учёта. Ключевой фигурой, стоявшей у истоков и платформы, и языка, считается Борис Нуралиев — сооснователь фирмы «1С», руководивший разработкой технологической платформы.
Важно понимать, что «язык 1С» не существует отдельно от платформы. Это предметно-ориентированный язык, заточенный под бизнес-задачи: документы, справочники, регистры, отчёты. Его создатели сознательно отказались от универсальности в пользу скорости решения учётных задач, и именно это решение определило успех продукта на российском рынке.
Ниже разберём, кто именно стоял за созданием языка, как он эволюционировал от версии к версии, чем отличается от классических языков программирования и что полезно знать тем, кто планирует изучать разработку на 1С.
Кто стоит за созданием языка 1С
Фирма «1С» была основана в 1991 году Борисом Нуралиевым вместе с коллегами. До этого Нуралиев работал программистом и занимался разработкой систем обработки данных. Именно он возглавил создание технологической платформы, внутри которой и появился встроенный язык, известный сегодня как язык 1С.
При этом корректно говорить о командной разработке. Над платформой трудились десятки разработчиков фирмы «1С»: архитекторы, проектировщики компилятора, разработчики визуального конструктора. Нуралиев выступал идейным и техническим руководителем, определявшим ключевые решения: предметную ориентацию языка, русскоязычный синтаксис, тесную интеграцию с метаданными конфигурации.
Поэтому на вопрос «кто создал язык 1С» точный ответ звучит так: фирма «1С» как организация, а персонально — Борис Нуралиев как руководитель разработки платформы. Приписывать авторство одному программисту было бы фактической ошибкой.
Как развивался язык от первых версий платформы
Первая массовая версия — «1С:Предприятие 6.0» — уже содержала встроенный язык, но он был достаточно ограниченным: простые конструкции, минимум встроенных функций, ориентация на бухгалтерские расчёты. Язык версии 7.7, вышедшей во второй половине 1990-х, стал заметно мощнее: появились модули, более развитая работа с объектами метаданных, запросы.
Переломным стал выход платформы «1С:Предприятие 8» в середине 2000-х. Язык был фактически переработан: появились объектные типы данных (справочники-объекты, документы-объекты), событийная модель с обработчиками, управляемые формы, разделение кода на клиентский и серверный. Старый код версии 7.7 без переработки на восьмёрке не работает — это разные поколения языка.
Дальнейшее развитие шло эволюционно: добавлялись новые типы, конструкции, возможности работы с коллекциями, расширялся язык запросов. Фирма «1С» развивает язык синхронно с платформой — отдельных релизов «языка» не существует, он обновляется вместе с технологической платформой.
Ключевые особенности языка, задуманные создателями
Самое известное решение авторов — русскоязычный синтаксис. Ключевые слова можно писать по-русски: «Если», «Тогда», «КонецЕсли», «Процедура». Допустим и английский вариант, и даже смешанный код, хотя смешение считается дурным тоном. Цель была прагматичной: снизить порог входа для бухгалтеров и специалистов без классического программистского образования.
Вторая особенность — глубокая связь с метаданными. Разработчик не описывает структуру таблиц вручную: он объявляет объект конфигурации (например, документ «РеализацияТоваров»), а платформа сама создаёт таблицы, формы, права доступа. Код на встроенном языке лишь дополняет это поведение — проведение документа, расчёты, проверки.
Третья черта — избыточная безопасность типов в учётных сценариях. Язык строго различает ссылку на объект и сам объект, значение и запрос. Это уменьшает число ошибок при работе с базой данных, но требует от новичка понимания модели данных платформы.
Ключевые слова доступны на двух языках, смешивать их не рекомендуется
Тип переменной определяется присвоенным значением, явного объявления типов нет
Код выполняется только в среде «1С:Предприятие», отдельного компилятора нет
Документы, регистры, отчёты, интеграции — не системное программирование
Чем язык 1С отличается от универсальных языков
Сравнение с C#, Java или Python некорректно по замыслу: язык 1С не конкурирует с ними, а решает другой класс задач. Он не умеет работать с памятью напрямую, не создаёт исполняемые файлы, не запускается вне платформы. Зато типовая операция «провести документ и построить отчёт» пишется на нём в разы быстрее, чем на универсальном языке с подключением ORM и генератора отчётов.
Ниже — сопоставление по практическим параметрам, важным при выборе инструмента.
| Параметр | Язык 1С | Универсальные языки (C#, Java, Python) |
|---|---|---|
| Область применения | Учёт, ERP, бизнес-процессы | Любые: от веба до системного ПО |
| Запуск кода | Только внутри платформы 1С | Автономно, на любой ОС |
| Работа с БД | Встроенная, через объекты и запросы | Через внешние библиотеки и драйверы |
| Порог входа для учётных задач | Низкий | Выше, нужна сборка стека технологий |
| Скорость разработки типовой учётной функции | Высокая | Ниже из-за инфраструктурного кода |
Практический вывод: если задача — автоматизация учёта, язык 1С эффективнее. Если нужен мобильный клиент, высоконагруженный веб-сервис или сложный алгоритм вне учётной модели, платформа 1С обычно дополняется внешними инструментами через механизмы интеграции.
Когда какой подход выбрать
Подходит для проведения документов, расчётов, отчётов, обменов внутри учётной системы. Ограничение: только внутри платформы.
Подходит для мобильных приложений, веб-порталов, тяжёлых вычислений. Ограничение: нужно проектировать обмен данными и поддерживать два стека.
Подходят для доработки типовой конфигурации без снятия её с поддержки. Ограничение: не все объекты и обработчики доступны в расширениях.
Как устроена экосистема вокруг языка
Язык — только часть инструментария. Разработчик работает в конфигураторе или в среде 1C:Enterprise Development Tools (EDT), использует язык запросов 1С для выборки данных, конструкторы форм и отчётов, систему компоновки данных. Всё это создано той же фирмой «1С» и развивается единым циклом.
Вокруг платформы сложилось сообщество франчайзи и независимых разработчиков, которые создают отраслевые решения на встроенном языке. Фирма «1С» сертифицирует такие решения и проводит экзамены «1С:Профессионал» и «1С:Специалист», косвенно задавая стандарты владения языком.
Что учитывать при изучении языка 1С
Начинать стоит не с синтаксиса, а с модели метаданных: понять, что такое справочник, документ, регистр сведений и регистр накопления. Без этого код будет казаться набором магических вызовов. Синтаксис сам по себе прост — базовые конструкции осваиваются за несколько дней человеком с любым техническим бэкграундом.
Основные трудности новичков лежат в другом: различие ссылки и объекта, контексты выполнения (клиент, сервер, толстый и тонкий клиент), транзакционность проведения документов. Эти темы требуют практики на реальной учебной базе, а не чтения справки.
- 1Установите учебную версию платформы и откройте конфигуратор
- 2Изучите объекты метаданных: справочники, документы, регистры
- 3Освойте базовый синтаксис: переменные, условия, циклы, процедуры и функции
- 4Напишите первый обработчик — например, проведение простого документа
- 5Изучите язык запросов и научитесь строить отчёты через СКД
- 6Разберитесь с разделением кода на клиентский и серверный контексты
Ограничения языка и границы его применимости
Язык 1С не подходит для задач вне учётной модели: низкоуровневой работы с оборудованием, разработки игр, системного ПО, научных вычислений. Попытки натянуть платформу на такие задачи заканчиваются переусложнёнными решениями, которые дорого поддерживать.
Вторая граница — производительность при массовых операциях. Встроенный язык интерпретируется платформой и уступает компилируемым языкам на тяжёлых алгоритмах. Правильный приём — выносить выборки в запросы (они выполняются на стороне СУБД) и избегать пообъектной обработки больших массивов данных.
Третье ограничение — привязка к вендору. Развитие языка полностью определяется фирмой «1С»; сообщество не может самостоятельно добавить конструкции или форкнуть реализацию. При выборе платформы для долгосрочного проекта это стоит учитывать как фактор риска.
Частые вопросы о создателях и языке 1С
Кто конкретно придумал язык программирования 1С?
Язык разработан коллективом фирмы «1С» как часть платформы «1С:Предприятие». Руководил созданием платформы Борис Нуралиев, сооснователь компании. Отдельного единоличного автора у языка нет — это продукт командной инженерной работы.
Язык 1С — это отдельный язык или диалект другого языка?
Это самостоятельный предметно-ориентированный язык, не являющийся диалектом BASIC, Pascal или другого языка. Синтаксически он напоминает структурные языки 1980-х, но реализация, типы данных и связь с метаданными полностью оригинальны.
Почему в 1С русский синтаксис?
Создатели платформы ориентировались на российский рынок и на специалистов без программистского образования. Русские ключевые слова снижают порог входа. Английский вариант синтаксиса тоже поддерживается платформой.
Можно ли писать на языке 1С вне платформы «1С:Предприятие»?
Нет. Встроенный язык исполняется только внутри платформы, у него нет отдельного компилятора или интерпретатора. Существуют независимые проекты с похожим синтаксисом, но это сторонние разработки, не связанные с официальной платформой.
Отличается ли язык версии 7.7 от языка версии 8?
Да, существенно. В восьмой версии изменилась объектная модель, появились новые типы, событийные обработчики, разделение контекстов. Код 7.7 несовместим с платформой 8 и требует переписывания при миграции.
Сложно ли выучить язык 1С человеку без опыта программирования?
Базовый синтаксис осваивается быстро, но основная сложность — в понимании модели данных платформы: регистров, проведения документов, контекстов выполнения. Реалистичный путь к уверенной разработке занимает несколько месяцев практики на учебных задачах.
Что важно запомнить
Язык 1С создан фирмой «1С» под руководством Бориса Нуралиева как встроенный язык платформы «1С:Предприятие». Это предметно-ориентированный инструмент для учётных задач с русскоязычным синтаксисом, не существующий вне платформы. Эффективное изучение начинается с метаданных, а не с синтаксиса.