Skip to content
Back to skills

Autumn

ASecurity

Создаёт и настраивает компонентные приложения на фреймворке Autumn (ОСень) для OneScript с DI и аннотациями. Использовать при работе с Autumn, Dependency Injection, «желудями», аннотациями &Желудь, &Дуб, &Верховный.

  • 4 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 12, 2026
documentationgit

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill autumn --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Autumn?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Autumn
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-autumn/badge)](https://www.skillsdirectory.com/skills/aibot88-autumn)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: autumn
description: Создаёт и настраивает компонентные приложения на фреймворке Autumn (ОСень) для OneScript с DI и аннотациями. Использовать при работе с Autumn, Dependency Injection, «желудями», аннотациями &Желудь, &Дуб, &Верховный.
---

# Autumn (ОСень)

Фреймворк компонентных приложений для OneScript с Dependency Injection и Inversion of Control. Разрешает зависимости конструкторов автоматически: не нужно вручную создавать цепочки объектов и передавать параметры во все точки создания.

## Принцип работы

Объект с конструктором, принимающим параметры (зависимости), регистрируется как компонент («желудь»). Вместо вызова `Новый Класс(зависимость1, зависимость2)` в коде используется `Осень.НайтиЖелудь("ИмяКласса")` — фреймворк сам создаёт зависимости и передаёт их в конструктор.

## Точка входа

```bsl
#Использовать autumn
#Использовать "Каталог/С/Классами/Команд"   // путь к папке с классами-компонентами

Поделка = Новый Поделка();
Поделка.ЗапуститьПриложение();
```

Каталог с классами должен содержать классы, помеченные аннотациями Autumn (Желудь, Дуб и т.д.), чтобы они регистрировались в контексте приложения.

## Получение компонента

```bsl
Обновлятор1С = Осень.НайтиЖелудь("Обновлятор1С");
```

Идентификатор совпадает с именем класса или с параметром аннотации `&Желудь("Идентификатор")`.

## Ключевые аннотации

- **&Желудь("Идентификатор")** — класс регистрируется как компонент (желудь). Без параметра используется имя класса. Параметры конструктора разрешаются как зависимости других желудей.

- **&Верховный** — корневой компонент (например, описание приложения). Указывается вместе с &Желудь.

- **&Дуб** — класс-фабрика: не сам является желудем, но в методе с &Завязь возвращает экземпляры других классов (желудей).

- **&Завязь** — метод внутри &Дуб, возвращающий экземпляр класса; используется для регистрации команд/компонентов без аннотаций на целевом классе (например, миграция легаси-кода).

Пример желудя:

```bsl
&Желудь("Обновлятор1С")
Процедура ПриСозданииОбъекта(ПроверяторВерсий, Настройки)
    // ПроверяторВерсий и Настройки будут разрешены Autumn и переданы сюда
КонецПроцедуры
```

Пример дуба с завязью:

```bsl
&Дуб
Процедура ПриСозданииОбъекта()
КонецПроцедуры

&Завязь
&КомандаПриложения(Имя = "legacy", Описание = "Легаси команда")
Функция МояЛегасиКоманда() Экспорт
    Возврат Новый МояЛегасиКоманда();
КонецФункции
```

## Рекомендации

- Один класс — одна ответственность; зависимости передавать через конструктор.
- Не создавать длинные цепочки вручную — регистрировать классы как желуди и получать их через `Осень.НайтиЖелудь()`.
- Настройки приложения можно вынести в `autumn-properties.json` или в отдельный желудь с интерфейсом настроек.

## Дополнительно

Расширенная справка по аннотациям и конфигурации — [reference.md](reference.md).

Документация: [autumn-library.github.io](https://autumn-library.github.io/).

Files in this skill

  • SKILL.md4.8 KB
  • source.json827 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.