- Стиль отступов
-
Стиль отступов
Стиль о́тступов — правила форматирования исходного кода, в соответствии с которыми отступы проставляются в удобочитаемой манере.
Используемый стиль отступов обычно особо оговаривается в стандарте оформления кода.
Редакторы текста, входящие в состав большинства популярных сред разработки, часто предоставляют средства для поддержки используемого стиля отступов, например, автоматическую вставку пробелов/табуляции при вводе скобок, обозначающих начало/конец логического блока.
Несомненно, предмет данной статьи является причиной бесконечных «священных войн».
Содержание
Отступы в Си
Существует четыре основных стиля отступов Си. Описанные ниже, все они имеют своей целью облегчение визуального отслеживания управляющих конструкций. Камнем преткновения является расстановка
{
и}
и оформление операторов (if
,else
,for
,while
, илиdo
) в блоки.Стиль «K&R»
Назван в честь Кернигана и Ричи из-за того, что все примеры из их книги «Язык программирования Си» (нередко обозначаемой как просто «K&R» по инициалам авторов) отформатированы подобным образом. Также известен как «kernel style» (BSD KNF; из-за того, что ядро UNIX написано на нём), а также как «Единственный Правильный Скобочный Стиль» (англ. One True Brace Style - 1TBS) со слов его приверженцев. Основной отступ, показанный ниже, состоит из 8 пробелов (или одной табуляции) на уровень. Иногда (но реже) используются 4 пробела.
if (<cond>) { ········<body> }
Стиль Олмана
Стиль Олмана — по имени Эрика Олмана, хакера из Беркли, написавшего множество BSD-утилит на нём (еще известен как «стиль BSD»). Имеет сходство с Паскалем и Алголом. Основной отступ на уровень — 8 пробелов, но не менее распространен стиль в 4 пробела (особенно в C++). Этот стиль по умолчанию предлагается в Microsoft Visual Studio 2005 (и более ранних продуктах) и Apple Xcode.
if (<cond>) { ········<body> }
Стиль Уайтсмита
Стиль Уайтсмита — популярен из-за примеров, шедших с Whitesmiths C — ранним компилятором с языка С. Основной отступ на уровень для скобок и блока — 8 пробелов.
if (<cond>) ········{ ········<body> ········}
Стиль GNU
Стиль GNU — используется во всех исходниках проекта GNU (например, GNU Emacs). Отступы всегда 4 символа на уровень, скобки находятся на половине отступа.
if (<cond>) ··{ ····<body> ··}
Популярность стилей
Исследования показали наибольшее распространение стилей Олмана и Уайтсмита, с примерно равным количеством поклонников на каждый. K&R/1TBS считается более универсальным, но распространен сейчас мало (открывающая скобка имеет тенденцию теряться). Защитники 1TBS приводят в защиту стиля экономность в использовании вертикального пространства, когда на одном экране можно прочесть большее количество строк текста.
См. также
Ссылки
- Кляус, Сергей Оформление кода в C. Sources.RU Magazine (Январь 2005). Проверено 11 июня 2006.
- indent style – стиль отступов. Новый Хакерский Словарь. Проверено 11 июня 2006.
Текстовые редакторы DOS MultiEdit • WordPerfect • Лексикон • Слово и Дело • Фотон
Windows UNIX-подобные ОС Кросс-
платформенныеФункции Автодополнение • Автоформатирование • Подсветка синтаксиса • Предиктивный ввод • Сворачивание • Стиль отступов
Wikimedia Foundation. 2010.
Отступ (программирование) — Окно настроек форматирования KDevelop Стиль отступов (индентация) правила форматирования исходного кода, в соответствии с которыми отступы проставляются в удо … Википедия
Стандарт оформления кода — (стандарт кодирования, стиль программирования) (англ. coding standards, coding convention или programming style) набор правил и соглашений, используемых при написании исходного кода на некотором языке программирования. Наличие общего… … Википедия
Scite — Тип текстовый редактор Разработчик Neil Hodgson Написана на C++ ОС Кроссплатформенное программное обеспечен … Википедия
Холивар — (от англ. holy war, [ həulɪ wɔ:] священная война) обмен сообщениями в интернет форумах и чатах, представляющий собой бесплодную полемику, в которой участники яростно пытаются навязать друг другу свои точки зрения. Например, доказать… … Википедия
Религиозные войны (сленг) — Холивар (от англ. holy war священная война) обмен сообщениями в интернет форумах и чатах, представляющий собой бессмысленные дискуссии, в которых участники пытаются доказать друг другу преимущество одной из нескольких похожих альтернатив… … Википедия
Холивары — Холивар (от англ. holy war священная война) обмен сообщениями в интернет форумах и чатах, представляющий собой бессмысленные дискуссии, в которых участники пытаются доказать друг другу преимущество одной из нескольких похожих альтернатив… … Википедия
Холивор — Холивар (от англ. holy war священная война) обмен сообщениями в интернет форумах и чатах, представляющий собой бессмысленные дискуссии, в которых участники пытаются доказать друг другу преимущество одной из нескольких похожих альтернатив… … Википедия
Vi — (visual) серия текстовых редакторов операционных систем семейства UNIX. Содержание 1 История 2 Интерфейс 2.1 … Википедия
Ed — первый стандартный текстовый редактор операционной системы UNIX, применялся в начале 1970 х. Расширенная его версия, известная как ex, послужила основой редактора vi. Имеет командно ориентированный интерфейс, поскольку создавался в те времена,… … Википедия
Sed — (от англ. Stream EDitor) потоковый текстовый редактор (а также язык программирования), применяющий различные предопределённые текстовые преобразования к последовательному потоку текстовых данных. Первоначально был написан как UNIX утилита… … Википедия