оформитель
документы по ГОСТ 7.32 · Markdown → docx + pdf
Листинги и программный код в дипломе по ГОСТ: правила оформления

Листинги и программный код в дипломе по ГОСТ: правила оформления

· обновлено

Короткий ответ:

Отдельного правила для листингов в ГОСТ 7.32 нет: код оформляют по аналогии с другими объектами — нумеруют, подписывают, ссылаются в тексте. На практике листинг набирают моноширинным шрифтом меньшего кегля (обычно 10–12 pt) с одинарным интервалом, подпись «Листинг 1 – Название» ставят над или под кодом по единому образцу. Длинный код выносят в приложения.

Коротко:

  • ГОСТ 7.32 листинги прямо не регулирует — единообразие и методичка важнее.
  • Код набирают моноширинным шрифтом, кегль меньше основного, интервал одинарный.
  • Подпись — «Листинг 1 – Название», ссылка в тексте до листинга.
  • Скриншоты кода не заменяют листинг: код должен быть текстом.
  • Длинные листинги выносят в приложения (например, «Листинг А.1»).
  • В Markdown-диалекте «Оформителя»: огороженный блок с caption= даёт нумеруемый листинг.

Примечание: ГОСТ 7.32-2017 не описывает листинги как отдельный объект. Приведённая практика опирается на общие требования ГОСТ 2.105-95, ЕСПД и методички кафедр — уточняйте конкретный формат подписи и шрифта у своего нормоконтроля.

Быстрый ответ: как оформить листинг

Что Как обычно правильно Что ломается чаще всего
Шрифт моноширинный (Courier New, Consolas) обычный пропорциональный шрифт
Кегль меньше основного: 10–12 pt тот же, что в тексте
Интервал одинарный полуторный, как в тексте
Подпись «Листинг 1 – Название» без подписи или «Код программы»
Ссылка «в листинге 1» до кода листинг без ссылки
Скриншот набор текстом картинка из редактора
Длинный код перенос или приложение код «уезжает» за поля
Оформление единый способ на всю работу где сверху, где снизу, где без номера

Нужно ли вообще оформлять листинги по ГОСТ

Строгого «листингового» раздела в ГОСТ 7.32-2017 нет. Листинг — это фрагмент исходного кода, и в работах по программированию его оформляют, опираясь на общую логику оформления объектов: у листинга есть номер, подпись и отсылка в тексте — как у рисунка или таблицы. Требования к программным документам задаёт ЕСПД (например, ГОСТ 19.401-78 «Текст программы»), но для ВКР чаще действует методичка кафедры.

Отсюда главный принцип: единообразие. Не так важно, поставите вы подпись сверху или снизу, важно, чтобы во всей работе было одинаково. Если методичка задаёт конкретный формат — приоритет у неё.

Оформление кода

Что обычно требуется:

  • моноширинный шрифт — Courier New, Consolas, Lucida Console;
  • кегль меньше основного — обычно 10–12 pt, чтобы код не «съедал» страницы и не выходил за поля;
  • одинарный межстрочный интервал;
  • без переносов слов внутри кода — переносы в коде недопустимы, они меняют смысл;
  • сохранённые отступы — отступы значимы в коде, их нельзя «схлопывать»;
  • цветовую подсветку — по желанию; в печати чаще достаточно чёрно-белого текста.

Длинные строки либо переносят вручную по правилам языка, либо размещают листинг на странице в альбомной ориентации. Если код длинный, его целиком выносят в приложение, а в основной части оставляют ключевой фрагмент.

Подпись и нумерация листинга

Распространённый формат подписи — «Листинг 1 – Название». Нумерация может быть:

  • сквозной — «Листинг 1, 2, 3…» по всему документу;
  • по разделам — «Листинг 1.1, 2.3»;
  • с литерой приложения — «Листинг А.1», если код в приложении.

Как и у других объектов, в тексте должна быть ссылка до листинга: «Пример обработчика приведён в листинге 1». Листинг без отсылки и без номера нормоконтроль считает незавершённым оформлением.

Чего не делать

  • вставлять код скриншотом — его нельзя выделить, текст размывается, качество зависит от масштаба; код должен быть настоящим текстом;
  • набирать код основным шрифтом — теряется моноширинность и выравнивание;
  • оставлять код без подписи и номера — на него невозможно сослаться;
  • писать несколько листингов с одним названием;
  • объединять в один листинг несвязанные фрагменты;
  • забывать про приложения — длинные исходники место именно там — см. «Оформление приложений по ГОСТ».

Как листинги оформляются в «Оформителе»

«Оформитель» (оформитель.com) собирает DOCX и PDF по ГОСТ 7.32. Листинг задаётся огороженным блоком с языком и атрибутом caption=:

Пример обработчика приведён в листинге {ref:lst_endpoint}.

```python {#lst_endpoint caption="Обработчик создания задачи"}
def create_task(payload: dict) -> Task:
    task = Task(**payload)
    db.session.add(task)
    db.session.commit()
    return task
```

Что делает сервис:

  • нумерует листинг — строка с caption= превращается в подпись «Листинг N – Название»; нумерация пересчитывается при правках;
  • без caption= — это простой блок кода без номера и подписи;
  • моноширинный шрифт и кегль задаёт стиль: код набирается тем же движком, что и остальной документ;
  • ссылки {ref:...} — в тексте {ref:lst_endpoint} подставляет актуальный номер листинга;
  • диаграммы не путаются с кодом — языки mermaid, plantuml и другие рендерятся как рисунки, а не как листинги;
  • альбомная ориентация — блок ::: landscape … ::: разворачивает страницу для широкого кода или большой таблицы;
  • вынос в приложения — листинг в приложении нумеруется с литерой («Листинг А.1»);
  • проверка — валидатор отмечает листинги без отсылок в тексте.

Часто задаваемые вопросы (FAQ)

Есть ли в ГОСТ требование, как оформлять листинги?

В ГОСТ 7.32-2017 отдельного раздела про листинги нет. К ним применяют общую логику оформления объектов: номер, подпись, ссылка в тексте. Для программных документов существует ЕСПД (например, ГОСТ 19.401-78 «Текст программы»), но в ВКР обычно ориентируются на методичку кафедры.

Каким шрифтом набирать код в дипломе?

Моноширинным: Courier New, Consolas, Lucida Console. Кегль меньше основного текста — обычно 10–12 pt, интервал одинарный. Так код занимает меньше места и не выезжает за поля.

Как подписывать листинг — «Листинг 1» или «Рисунок 1»?

Листинг подписывают как листинг: «Листинг 1 – Название». Подписывать код как рисунок или таблицу неверно — это отдельный тип объекта. Если ваш нормоконтроль требует иначе, следуйте методичке.

Подпись к листингу ставится сверху или снизу?

Единого стандарта нет. Часто подпись ставят над листингом по аналогии с таблицей, но встречается и подпись снизу. Главное — единообразие во всей работе. В «Оформителе» подпись листинга выводится над кодом.

Можно ли вставить код картинкой?

Не рекомендуется. Скриншот нельзя выделить и скопировать, он размывается при печати и «плывёт» при масштабировании. Код должен быть настоящим текстом — тогда он корректно переносится, нумеруется и подсвечивается.

Куда девать длинный исходный код?

В приложения. В основной части оставляют ключевой фрагмент или ссылку, а полный текст программы выносят в приложение и нумеруют с литерой: «Листинг А.1». Подробнее — в статье об оформлении приложений.

Нужна ли ссылка на листинг в тексте?

Да. Как и любой объект, листинг должен быть упомянут в тексте до своего появления: «в листинге 1 приведён…», «(листинг 2)». В «Оформителе» для этого служит {ref:lst_id}, а валидатор ловит листинги без ссылок.

Можно ли выделять листинг рамкой?

Обычно код отделяют от текста отбивками и моноширинным шрифтом; рамка — по желанию и по методичке. Главное — чтобы листинг визуально читался как код и был одинаково оформлен по всей работе.

Как нумеровать листинги — сквозной нумерацией или по разделам?

Оба способа допустимы: сквозной («Листинг 1, 2») или по разделам («Листинг 1.1»). В приложении добавляется литера («Листинг А.1»). Способ должен быть единым — конкретный вариант уточните у нормоконтроля.

Как «Оформитель» оформляет листинги автоматически?

Сервис превращает огороженный блок с caption= в нумеруемый листинг «Листинг N – Название», подставляет номера в {ref:...}, рендерит диаграммы-как-код как рисунки (не как код), поддерживает альбомную ориентацию через ::: landscape и вынос листингов в приложения.


Источники

  1. ГОСТ 7.32-2017 «СИБИД. Отчёт о научно-исследовательской работе. Структура и правила оформления»
  2. ГОСТ 2.105-95 «ЕСКД. Общие требования к текстовым документам»

Читайте также

Поделиться: Telegram · ВКонтакте · WhatsApp