← Назад к вопросам

Что не нравится в платформе?

1.2 Junior🔥 201 комментариев
#Опыт и софт-скиллы

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

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Критические замечания к платформе 1С Предприятие

Как опытный разработчик с 10+ лет стажа, я работал с 1С на всех этапах эволюции платформы. Несмотря на мощность инструмента, есть объективные проблемы, которые замедляют разработку и усложняют поддержку.

1. Язык 1С — проблемы с выразительностью

Проблема: Древний синтаксис

// 1С требует много boilerplate кода
Процедура ОбработатьДанные()
    Данные = Новый Массив();
    Для н = 0 По ПолучитьНомерПоследней() Цикл
        ЭлементДанных = Данные[н];
        // долгий путь для простой операции
    КонецЦикла;
КонецПроцедуры

В Python или JavaScript это было бы в одну строку:

данные = [обработать(элемент) for элемент in данные]

Почему проблема:

  • Больше кода = больше ошибок
  • Медленнее писать и читать
  • Нет list comprehensions, lambda, higher-order functions
  • Нет современных паттернов (async/await, generators)

2. Отсутствие полноценной типизации

Проблема: слабая система типов

// В 1С трудно отловить ошибки типов
Функция ВычислитьСумму(ПрименитьСтавку)
    Если ПрименитьСтавку Тогда
        // ПрименитьСтавку может быть числом, строкой, булевым
        // IDE не предупредит если передать неправильный тип
    КонецЕсли;
КонецФункции

Последствия:

  • Ошибки типов обнаруживаются только в runtime
  • Сложнее рефакторить большие системы
  • IDE не может дать полноценный autocomplete
  • Нужно писать больше тестов для поиска ошибок

3. Производительность — критическая проблема

Проблема: 1С медленная на больших объёмах

// Даже оптимизированный код медленный
Запрос = Новый Запрос("ВЫБРАТЬ ...");
Результат = Запрос.Выполнить().Выгрузить();

// Работа с большой таблицей в памяти — nightmare
ДляКаждого Строка Из РезультатТаблица Цикл
    // 100k строк = заметная задержка
КонецЦикла;

Где это проблема:

  • Обработка больших регистров (> 100k записей)
  • Сложные отчёты с множественными соединениями
  • Параллельная обработка документов
  • Экспорт/импорт больших объёмов данных

Причина: 1С интерпретируемая, не компилируемая язык

4. Архитектура — hard to scale

Проблема: монолитная структура

1С спроектирована как монолит:

  • Все модули в одной базе
  • Сложно разделить по командам
  • Нет встроенной поддержки microservices
  • Нет полноценного API для интеграции

В современных системах:

  • Разделение по доменам
  • Независимое развертывание
  • Асинхронная коммуникация
  • 1С это не поддерживает нативно

5. ОРМ (ORM) — SqlAlchemy для 1С не существует

Проблема: нет абстракции над БД

// Приходится писать SQL напрямую
Запрос = Новый Запрос(
    "ВЫБРАТЬ * ИЗ Справочник1 ГДЕ Дата > @Дата");

// Нет:
// - query builder'а
// - миграций (есть только ручные скрипты)
// - ORM для relationships
// - type-safe queries

Когда меняешь структуру таблицы, нужно вручную обновлять 10+ запросов.

6. Тестирование — nightmare

Проблема: отсутствие встроенной тестовой инфраструктуры

// В 1С нет unittest framework как в Python
// Нет встроенных:
// - mocks
// - fixtures
// - parametrized tests
// - integration test runners

// Приходится писать все с нуля
Процедура ТестВычисленияСуммы()
    // Ручное setup
    // Ручное assert
    // Нет изоляции от БД
КонецПроцедуры

Последствия: люди не пишут тесты вообще

7. IDE — отстала от времени

1С:Предприятие 8 IDE:

  • Медленная и тяжёлая
  • Нет современного refactoring
  • Слабый intellisense
  • Нет встроенного git (в новых версиях появился)
  • Нет extensions marketplace как VS Code

Что я вижу в других IDE:

  • IntelliJ IDEA — мощная рефакторизация
  • VS Code — молниеносная, расширяемая
  • Neovim — lightweight, extensible

8. Версионирование и git

Проблема: 1С плохо работает с git

  • Бинарные форматы (.dt файлы)
  • Сложно merge'ить конфликты
  • Нет стандартной workflow
  • Истории коммитов неинформативны

Современный подход:

  • Git как source of truth
  • Code review перед merge
  • Автоматические проверки
  • 1С требует специальных инструментов (как Vanessa)

9. Экосистема — изолирована

Проблема: сложная интеграция с внешним миром

// Даже простой REST запрос требует много кода
Запрос = Новый HTTPЗапрос("GET", URL);
Соединение = Новое HTTPСоединение("api.example.com", 443, , , , , Новый ЗащитаSSL);
Ответ = Соединение.Отправить(Запрос);

В Python: response = requests.get(url) (одна строка)

Недостатки:

  • Нет встроенного npm/pip эквивалента
  • Сложно подключить внешние библиотеки
  • Нет стандартных пакетов для common tasks
  • Нельзя использовать наработки других языков

10. Стоимость лицензирования

Проблема: дорого vs альтернативы

  • Лицензии на пользователей
  • Лицензии на сервер
  • Дополнительные модули
  • Обновления

Сравнение:

  • 1С: 10k+ $ в год для SMB
  • ERP на Python/Node.js: $0 (open source) или $1-5k за SaaS

Что хорошо в 1С (честно)

Несмотря на критику, 1С имеет плюсы:

  • Регистры накопления — мощный механизм для аналитики
  • Встроенная БД — PostgreSQL
  • Документооборот — хорошо спроектирован
  • Встроенная отчётность — для простых отчётов
  • Сообщество — большое в постсоветских странах
  • Стабильность — платформа проверена временем

Заключение

1С лучше всего подходит для:

  • Бухгалтерского учета
  • Управления складом
  • CRM для SMB
  • Систем с фиксированной структурой

1С плохо подходит для:

  • High-load систем
  • Инновационных продуктов
  • Систем, требующих быстрой итерации
  • Микросервисной архитектуры

Мой совет: 1С остаётся отличным выбором для корпоративной аналитики, но для новых проектов с высокими требованиями к масштабируемости — смотри в сторону Python, Go или Node.js.