LINUX.ORG.RU

Какой стиль отступов вы используете?


0

1

Тема навеяна недавным топиком про K&R-стиль указателей vs Страуструповский стиль.

Стили отступов (indent styles):

1. K&R стиль (K&R style / 1TBS)

if (<cond1>) {
    if (<cond2>){
        <body>
    }
}

2. Стиль Олмана (Allman's style)

if (<cond1>) 
{
    if (<cond2>)
    {
        <body>
    }
}

3. Стиль Уайтсмита (Whitesmith's style)

if (<cond1>) 
    {
    if (<cond2>)
        {
        <body>
        }
    }

4. Стиль GNU (GNU style)

if (<cond1>) 
  {
    if (<cond2>)
      {
        <body>
      }
  }

А какой стиль отступов (indent style) вы предпочитаете и почему?
Лично мне стиль Олмана кажется наиболее удобным.

★★★★★

Стиль Олмана. Ну или K&R, когда очень не хочется растягивать код по строчкам. Остальное - вообще не пойми что и зачем.

melkor217 ★★★★★
()

K&R, собственно как и для указателей.

vkos ★★
()
Ответ на: [:||\ /||:] от Eddy_Em

>Самому нравится K&R без лишних пробелов:
Визуально похоже на кашу же. Тяжело читается, не?

kovrik ★★★★★
() автор топика

Первый. У всех остальных съедается от одной до двух линий на каждый блок на скобки, код требует больше линий, не удобно. Самый ужасный из всех GNU стиль, требует лишней возьни с пробелами.

mashina ★★★★★
()
Ответ на: комментарий от kovrik

Визуально похоже на кашу же. Тяжело читается, не?

Нужно разбавлять код пустыми линиями в зависимости от логической группировки или от иных обстоятельств. Тогда каши не будет.

mashina ★★★★★
()

Комбинированный 1 и 2
Для классов и методов - 2
Внутри методов - 1

zJes ★★
()

Eric Allman, стилю которого отдают предпочтение в каментах, писал для FreeBSD и его стиль называют ещё «BSD style». Как на лоре не стыдно в таких вещах признаваться - в симпатиях к стилю бздуна?

anonymous
()

2й, просто кажется более удобным

unC0Rr ★★★★★
()
Ответ на: комментарий от kovrik

Легко читается, в отличие от способа 2. Сразу видно блоки... Ну и естественно, между крупными логическими блоками нужно делать пустые строки, а еще лучше - комментарии вида

/****************************
 * комментарий к очередному
 * блоку кода
 ****************************/
Вспомогательные звездочки в начале таких комментариев geany отлично рисует :)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anonymous

>Eric Allman, стилю которого отдают предпочтение в каментах, писал для FreeBSD и его стиль называют ещё «BSD style». Как на лоре не стыдно в таких вещах признаваться - в симпатиях к стилю бздуна?
Толсто.

kovrik ★★★★★
() автор топика

K&R - меньше места занимает. Чем меньше места занимает код, тем больше его влазит на экран, тем больший кусок можно окинуть взглядом и тем легче код анализировать. Бывает что и так делаю

if(...){ ...;...;...; }

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

AIv ★★★★★
()

Раньше использовал второй (синтаксис C изучал в игре Colobot), недавно перешел на k&r.

Есть еще такой стиль:

{if (<cond1>) 
    {if (<cond2>)
        {<body>}}}

Diecae8i
()
Ответ на: комментарий от Eddy_Em

Согласен с предыдущим комментатором. Твой вариант - трудно читаемый кусок говна.

fang
()
Ответ на: комментарий от Diecae8i

>Есть еще такой стиль:
LISP-style какой-то :)

kovrik ★★★★★
() автор топика

когда-то уже писал, что во 2-ом способе начало блока кода воспринимается быстрее.
использую его. в остальном мой coding style может варьироваться)

xydo ★★
()

4

Потому что мне он кажется более удобочитаемым, чем Олман.

Но я пишу функции без пробела между названием и скобками (а гну-стиль рекомендует пробел), так как с пробелом - ужасно.

anonymous
()

K&R, очевидно же. Лучше читается, меньше лишних пустых строк. На перле вообще использую конструкции типа foreach (@list) { action if smth; }; в одну строчку.

redgremlin ★★★★★
()

Нравится 1. К 2 отношусь спокойно. Буду и его без проблем использовать, если того потребует coding style. Визуально, эти два варианта лучше отделяют информативную часть от синтаксического мусора в виде скобок. 3 и 4 - страшное уродство.

fang
()

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

Zubok ★★★★★
()

Последние два - маразм.

Использую первый.

anonymous
()

И да, было уже недавно.

anonymous
()

k&r, потому что нравится. на работе олман.

waker ★★★★★
()

2. Только пробел после ключевого слова не ставлю.

KRoN73 ★★★★★
()

Первый. Могу терпеть второй, но советую переучиваться на первый.
За третий и, в особенности, четвёртый, я просто готов оторвать руки.

tia
()
Ответ на: комментарий от tia

>Первый. Могу терпеть второй, но советую переучиваться на первый.
И почему советуешь переучиваться на 1й?

kovrik ★★★★★
() автор топика

2 и только 2. K&R менее читабелен, остальные бредовые.

Pavval ★★★★★
()
if(cond){
 if(cond)expr;
 expr;}

А вообще, если проект уже начат, то стараюсь следовать его код-стайлу.

staseg ★★★★★
()

Олмана
к_анд_Р слишком туманит код

xhat
()

Еще вариант.


        if (<cond1>)
           {
    if (<cond2>)
        {
<body>
        }
           }
Diecae8i
()

Стиль Уайтсмита использовал еще в школе, когда кодил на паскале. Сейчас использую стиль Олмана, реже K&R

Pinkbyte ★★★★★
()

2.

P.S. Стиль Уайтсмита выглядит как код быдло-студента.

Raving_Zealot ★★
()

1tbs
на крайняк, можно воспользоваться indent[C] и astyle[C++]

backbone ★★★★★
()
Ответ на: комментарий от kovrik

Потому как первый, по моему и не только мнению, лучше.
Экономия пространства(только представь себе, оператор if занимает три строчки!), проще читаются релайтед-блоки(проще читать два блока if-else, а мозг сам их соединяет во что-то единое, когда используется «} else {») etc. Самое главное - проще и лучше всего читается(что бы и кто бы не говорил).
Причин и бонусов много.

tia
()

Когда приходится что-то программировать на С-подобном языке, использую 2 стиль.
К слову, именно им принудительно форматируется исходный код в MSVS

alix ★★★★
()
Ответ на: комментарий от alix

>Стиль GNU вот в первый раз увидел, тоже весьма интересно

Его главный минус перед олманом - требуется «умный» редактор, который сам будет ставить отступы с этими двумя лишними пробелами.

Потому что вручную их ставить откровенно неинтересно.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.