Чистая архитектура и DDD для 1С-разработчиков через Unity и C#

25 участников

О чём курс

Этот практический курс предназначен для 1С-разработчиков, стремящихся выйти за рамки простого написания кода и освоить профессиональное проектирование архитектуры сложных систем. Программа обучения сфокусирована на создании полноценных сценариев и подсистем, где бизнес-логика четко отделена от интерфейса, хранимых данных и ограничений платформы 1С. Курс идеально подходит тем, кто сталкивается с проблемами «расползания» логики по формам и общим модулям, испытывает трудности при интеграции новых решений в существующие конфигурации или не знает, как обосновать свои архитектурные решения перед командой.

В процессе обучения вы научитесь проводить архитектурные границы, управлять зависимостями и предотвращать возникновение критических проблем при масштабировании проекта. Уникальность курса заключается в использовании кросс-платформенного подхода: вы будете изучать архитектурные паттерны на примере Unity и C#, где принципы проектирования видны физически, а затем переносить этот опыт в среду 1С. Это позволит вам не просто копировать чужие приемы, а осознанно адаптировать принципы Clean Architecture и DDD под специфические ограничения платформы 1С, сохраняя чистоту кода даже при работе с legacy-системами.

Курс проходит в формате интенсивной практической работы. Вы не будете создавать игру с нуля, а будете работать с готовым учебным проектом, чтобы сфокусироваться именно на архитектурных аспектах. На выходе вы получите навыки проектирования систем от действия пользователя до конечного результата, научитесь выделять бизнес-инварианты, проектировать агрегаты и bounded contexts, а также проводить осмысленное код-ревью. Вы научитесь разделять систему на слои (UI, Application, Domain, Infrastructure), что сделает ваш код более предсказуемым, тестируемым и легким в поддержке. В завершение обучения вы реализуете собственную подсистему в 1С, интегрировав её в типовое решение с соблюдением всех изученных архитектурных принципов.

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

Программа обучения

  1. Подготовка к работе с учебным проектом Разберётесь в готовом проекте на Unity и C#, чтобы уверенно работать с учебными примерами и не отвлекаться на полноценное изучение нового стека. Научитесь находить нужные объекты и участки кода, запускать проект, вносить изменения и разбираться с базовыми ошибками. Что изучим: зачем часть архитектурных решений рассматривается на другом стеке; как открыть и запустить готовый проект; где находятся сцена, объекты, параметры и код; как найти нужный объект и связанный с ним компонент; как открыть C#-скрипт и внести простое изменение; как читать сообщения об ошибках и простой stack trace; как собрать готовое приложение. Ваш результат после модуля: У вас будет настроенный и проверенный учебный проект, готовый к дальнейшей работе. Вы сможете самостоятельно открыть нужную сцену и скрипт, найти связанный с объектом код, внести простое изменение, запустить приложение и понять причину базовой ошибки по сообщению и stack trace.
  2. Классы, зависимости и сборка приложения Научитесь видеть, от чего на самом деле зависит код, делать эти зависимости явными и управлять ими из одной точки. Сможете собирать приложение так, чтобы отдельные реализации можно было заменять без переписывания основной логики и появления скрытых связей. Что изучим: необходимый минимум C# для чтения кода; классы, объекты, методы, конструкторы и интерфейсы; явные и скрытые зависимости; создание, поиск и передача зависимостей; глобальный доступ и Service Locator; Dependency Injection без привязки к контейнеру; объектный граф и композиция объектов; Bootstrap и Composition Root; отличие сборки приложения от выполнения прикладного сценария. Ваш результат после модуля: У вас будет собран прозрачный объектный граф, в котором понятно, какие компоненты создаются, как они связаны и где выбираются их реализации. Вы вынесете сборку приложения в отдельную точку, отделите создание объектов от их работы и сможете заменять инфраструктурные детали, не затрагивая прикладной сценарий.
  3. Clean Architecture: от действия пользователя до результата Научитесь проектировать пользовательский сценарий целиком — от действия в интерфейсе до выполнения бизнес-логики, обращения к данным и отображения результата. Сможете разделять ответственность между UI, Application и Infrastructure так, чтобы форма и технические детали не управляли логикой приложения. Что изучим: акторы, их цели и пользовательские сценарии; отличие технического события от Use Case; UI, Application, Domain и Infrastructure; Controller, Request и Input Boundary; Use Case и исходящие порты; Gateway и инфраструктурные адаптеры; Output Boundary; Presenter, ViewModel и View; направление управления и направление зависимостей; полный стек вызовов от действия до результата. Ваш результат после модуля: У вас будет спроектирован полный стек вызовов для самостоятельного Use Case: Controller, Request, Input Boundary, прикладной сценарий, исходящие порты, инфраструктурные адаптеры, Presenter и ViewModel. Для каждого элемента вы определите его ответственность, входные и выходные данные, а также правильное направление управления и зависимостей.
  4. Domain и DDD: бизнес-правила внутри модели Научитесь находить настоящие бизнес-правила и отделять их от интерфейса, сценариев приложения и технических деталей. Сможете собирать доменную модель так, чтобы она не просто хранила данные, а сама защищала важные ограничения и не позволяла системе переходить в некорректное состояние. Что изучим: отличие Domain от UI, Application и Infrastructure; единый язык предметной области; Entity и идентичность; Value Objects, неизменяемость и инкапсуляция; бизнес-инварианты; Aggregate и Aggregate Root; граница согласованности; Repository; различия между Use Case, Application Service и доменной операцией; Domain Service; bounded context и локальный язык контекста; связь DDD и Clean Architecture. Ваш результат после модуля: У вас будет спроектирована доменная модель выбранного сценария: Entity, Value Objects, Aggregate, Aggregate Root и граница согласованности. Вы сформулируете бизнес-инварианты, определите, где должно находиться каждое правило, и разделите ответственность между Use Case, Domain Service и самой доменной моделью.
  5. Как сохранить архитектуру при росте системы Научитесь выстраивать архитектурные границы между модулями: контролировать допустимые зависимости, защищать внутренние части модулей и не допускать циклических связей. Сможете организовать взаимодействие между bounded contexts так, чтобы они не проникали во внутренние модели друг друга и были связаны через понятные контракты. Что изучим: Физическая защита архитектурных границ: отличие папки и логического слоя от физической границы; пространства имён, сборки и ссылки между ними; допустимый граф зависимостей; публичная и внутренняя поверхность модуля; обнаружение циклических связей; возможности и ограничения технической защиты архитектуры. Взаимодействие между bounded contexts: внутренняя модель и публичный API контекста; контракты взаимодействия; передача идентификаторов и значений вместо чужих агрегатов; Process Manager; межконтекстная координация; Ваш результат после модуля: У вас будет спроектирована схема взаимодействия частей системы: допустимый граф зависимостей, публичная и внутренняя поверхность модулей, а также контракты между bounded contexts. Вы сможете находить циклические связи, закрывать внутреннюю модель контекста, передавать между частями системы только необходимые данные и технически предотвращать часть архитектурных нарушений.
  6. Применение Clean Architecture и DDD в 1С Перенесёте изученные принципы в реальную разработку на 1С и разберётесь, как применять их с учётом возможностей и ограничений платформы. Научитесь сохранять архитектурный смысл, не пытаясь механически повторить структуру C#, и выбирать практичные способы организации границ, зависимостей и бизнес-логики. Что изучим: как перенести архитектурные решения в ограничения 1С; как защищать инварианты и использовать Value Objects; как реализовать интерфейсы, Ports и Adapters; чем приблизить Bootstrap и Composition Root; как обозначать границы через модули, подсистемы, расширения и префиксы; как разделять Domain Model и Persistence Model; как отделять форму от модели хранения; Ваш результат после модуля: У вас будет спроектирован практический вариант архитектуры для 1С: разделение формы, прикладного сценария, доменной логики и хранения данных, явная композиция зависимостей, Ports и Adapters, а также обозначенные границы модулей и подсистем. Вы поймёте, какие решения можно закрепить средствами платформы.
  7. Итоговая работа: полноценная подсистема в 1С Самостоятельно пройдёте весь путь проектирования и реализации новой подсистемы в 1С — от бизнес-задачи и пользовательских сценариев до рабочего кода и интеграции с типовым решением. Научитесь создавать новые части системы так, чтобы они сохраняли собственные архитектурные границы и не растворялись в legacy-коде существующей конфигурации. Что изучим: определите бизнес-задачу, акторов и ключевые Use Cases подсистемы; самостоятельно спроектируете её архитектуру; реализуете полный сценарий — от пользовательского действия до бизнес-логики и работы с данными; разделите ответственность между слоями и выстроите корректные зависимости; выделите Entity, Value Objects, Aggregates и бизнес-инварианты; организуете взаимодействие через Ports и Adapters; интегрируете новую подсистему с типовым решением, не связывая её напрямую с legacy-кодом; предусмотрите ограничения платформы 1С и способы их компенсации; проведёте взаимное код-ревью и разберёте архитектурные решения друг друга; Ваш результат после модуля: У вас будет полностью спроектированная и реализованная подсистема в 1С с реальной бизнес-логикой, выделенными Use Cases, слоями, зависимостями, Entity, Value Objects, агрегатами, Ports и Adapters. Вы интегрируете её с типовым решением, проведёте взаимное код-ревью, доработаете архитектуру по обратной связи и сможете обосновать каждое ключевое решение.
Складчина создана 31 июля 2026 г. · описание обновлено 3 сентября 2026 г.

Теги курса

Профессии

Другие материалы автора 1

ЕШ Евгений Шилов Все материалы
0 ₽