Стилевой кодовый минимум — различия между версиями
м |
м |
||
Строка 13: | Строка 13: | ||
<blockquote>В Интернетах есть куча срачей на тему «табы vs пробелы», но когда в тред приходит человек, который говорит, что ему всё равно, хоть смесь — его точно бьют и те, и другие :)</blockquote> | <blockquote>В Интернетах есть куча срачей на тему «табы vs пробелы», но когда в тред приходит человек, который говорит, что ему всё равно, хоть смесь — его точно бьют и те, и другие :)</blockquote> | ||
− | Соответственно, если используем пробелы, в опциях редактора | + | Соответственно, если используем пробелы, в опциях редактора '''отключаем табы'''! |
− | + | ||
− | Если используем табы, то | + | Если в редакторе есть ещё и режим «эмуляции половины таба», '''обязательно''' отключите и его, ибо он генерирует смесь табов и пробелов! Пример такого редактора — встроенный в Midnight Commander. |
+ | |||
+ | Если же используем табы, то делаем все отступы '''исключительно табами'''! | ||
== Блоки и функции == | == Блоки и функции == | ||
Строка 24: | Строка 25: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! Очень желательно: | + | !width=33 % valign=top| Очень желательно: |
− | ! Можно, но не нужно — визуально тело сливается с условием: | + | !width=33 % valign=top| Можно, но не нужно — визуально тело сливается с условием: |
− | ! НИ В КОЕМ СЛУЧАЕ: | + | !width=33 % valign=top| НИ В КОЕМ СЛУЧАЕ: |
|- | |- | ||
| | | | ||
+ | <<<<<<< старый текст: | ||
+ | if (...) | ||
+ | { | ||
+ | код... | ||
+ | } | ||
+ | ======= | ||
<pre>if (...) | <pre>if (...) | ||
{ | { | ||
код... | код... | ||
}</pre> | }</pre> | ||
+ | >>>>>>> (чужая версия) | ||
| | | | ||
+ | <<<<<<< старый текст: | ||
+ | if (...) { | ||
+ | код... | ||
+ | } | ||
+ | ======= | ||
<pre>if (...) { | <pre>if (...) { | ||
код... | код... | ||
}</pre> | }</pre> | ||
+ | >>>>>>> (чужая версия) | ||
Хотя, например, [http://perldoc.perl.org/perlstyle.html perlstyle] предлагает именно этот способ форматирования блоков, лично я не использую его и в Perl-коде, ибо неудобно. | Хотя, например, [http://perldoc.perl.org/perlstyle.html perlstyle] предлагает именно этот способ форматирования блоков, лично я не использую его и в Perl-коде, ибо неудобно. | ||
| | | | ||
+ | <<<<<<< старый текст: | ||
+ | if (...) | ||
+ | { | ||
+ | код... | ||
+ | } | ||
+ | ======= | ||
<pre>if (...) | <pre>if (...) | ||
{ | { | ||
Строка 44: | Строка 64: | ||
} | } | ||
</pre> | </pre> | ||
+ | >>>>>>> (чужая версия) | ||
или | или | ||
+ | <<<<<<< старый текст: | ||
+ | if (...) | ||
+ | { | ||
+ | код... | ||
+ | } | ||
+ | ======= | ||
<pre>if (...) | <pre>if (...) | ||
{ | { | ||
код... | код... | ||
}</pre> | }</pre> | ||
+ | >>>>>>> (чужая версия) | ||
|} | |} |
Версия 00:49, 30 мая 2011
Чтобы был качественный код, лучше следовать какому-то Style Guide, например гугловскому: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
Но «чтобы не было говна», какому стилю следовать — не так важно, главное следовать хоть какому-то.
Как минимум:
Отступы
Я рекомендую использовать для отступов только пробелы и размер табуляции в 4 символа. НО не так важно, табы или пробелы и какой размер табуляции!
Важно, чтобы размер отступа был ОДИНАКОВЫЙ по всей программе и чтобы не было СМЕСИ табов с пробелами!
В Интернетах есть куча срачей на тему «табы vs пробелы», но когда в тред приходит человек, который говорит, что ему всё равно, хоть смесь — его точно бьют и те, и другие :)
Соответственно, если используем пробелы, в опциях редактора отключаем табы!
Если в редакторе есть ещё и режим «эмуляции половины таба», обязательно отключите и его, ибо он генерирует смесь табов и пробелов! Пример такого редактора — встроенный в Midnight Commander.
Если же используем табы, то делаем все отступы исключительно табами!
Блоки и функции
Во-первых, опять-таки их нужно хотя бы форматировать одинаково по всей программе. А во-вторых, фигурные скобочки должны быть на одном уровне с началом блока!
Очень желательно: | Можно, но не нужно — визуально тело сливается с условием: | НИ В КОЕМ СЛУЧАЕ: |
---|---|---|
<<<<<<< старый текст: if (...) { код... } =if (...) { код... } >>>>>>> (чужая версия) |
<<<<<<< старый текст: if (...) { код... } =if (...) { код... } >>>>>>> (чужая версия) Хотя, например, perlstyle предлагает именно этот способ форматирования блоков, лично я не использую его и в Perl-коде, ибо неудобно. |
<<<<<<< старый текст: if (...) { код... } =if (...) { код... } >>>>>>> (чужая версия) или <<<<<<< старый текст: if (...) { код... } =if (...) { код... } >>>>>>> (чужая версия) |