Я читаю Стандарты кодирования Zend Framework, где говорится, что фигурная скобка после определений класса должна быть на следующей строке, «одна истинная форма скобки».
class MyClass
{
function....
}
У меня обычно фигурные скобки находятся в одной строке:
class OtherClass {
function ...
}
По какой причине ставится фигурная скобка на следующей строке? Или использовать любой другой стиль, если на то пошло?






Предпочтения пользователя. Это действительно не имеет значения. Когда я разрабатывал на PHP, я использовал второй вариант, но теперь, используя C#, я использую первый.
Личные предпочтения - действительно единственная реальная «причина».
Более того, мне интересно, почему мы обычно обсуждаем различия форматирования в коде, а не в других стандартных текстовых языках, таких как XML. Я не помню, чтобы видел XML, отформатированный в стиле K&R (второй в исходном вопросе).
Я обнаружил, что в большинстве случаев отдельные строки более понятны, но в одном случае, UIView блокирует, легче читать K&R. Это вопрос способности следить за строками на экране глазами, не связанного с личными желаниями. использовать один стиль поверх другого.
также спасибо за подсказку, как это назвать: D
Я считаю, что первый упомянутый вами стиль помогает визуально компенсировать имя класса из определений его членов. Это помогает мне легче находить начало объявления класса при сканировании кода.
Наличие подтяжек на линиях помогает визуально отделить внутреннюю часть от внешней. Это упрощает быстрое сканирование исходного кода и позволяет отличать блоки от их окружения.
Кроме того, наличие фигурных скобок на одном уровне отступа облегчает глазу поиск совпадения.
Часто упоминаются следующие причины:
Как говорили другие: если вы работаете над сторонним кодом, просто следуйте его соглашениям. Если вы работаете над своим собственным кодом, просто используйте тот стиль, который вам удобнее.
На эту весьма субъективную тему уже есть несколько тем ...
Некоторые люди увлечены этим, лично я выбрал «читаемый» вариант выравнивания скобок (я не плачу за недвижимость, используемую моим кодом на экране ... поэтому компактность меня не интересует), но когда я участвую в проект, использующий другой стиль, я просто использую тот, который связан с моим вкладом. То же самое для размера табуляции, жесткого или мягкого и т. д.
Настоящая причина - иметь единообразный код во всей кодовой базе. Оба стиля имеют свои преимущества: какой из них «лучше», зависит от личных предпочтений, а какой «традиционно» используется в языке и в проекте.
Если предписан стиль брекетов, используйте его, иначе используйте то, что использовалось до вашего приезда. Если вы начинаете новый проект, используйте то, что обычно используется на выбранном языке.
То же самое касается вкладок и пробелов.
Я думаю, что стиль кодирования и соглашения об именах в личных или командных проектах в основном являются делом личного вкуса (хотя разумно, что команда принимает единый стиль кодирования и соглашения об именах).
Лично мне нравится следовать соглашению Стиль Оллмана, поскольку оно дает мне быстрый обзор моего кода и структуры отступов. Конечно, это будет стоить вам дополнительных строк в коде, но я не думаю, что это весит до преимуществ.
Хорошими ресурсами по этому поводу являются следующие статьи Википедии:
Имеет ли значение, какой стиль скобок вы используете? Нет. Имеет ли значение, что все, кто работает над одним проектом или исходным файлом, используют один и тот же стиль скобок? Нет; Это не только не имеет значения, но и полезно, если стили скобок различаются от одного кодировщика к другому, даже в одном и том же файле.
«Почему именно этот кусок кода делает это?»
«Я не знаю. Это почерк Кевина. Пойдем, спросим его».
Я думаю, что есть нечто большее, чем просто «личные предпочтения». Программисты, являющиеся людьми, подвержены когнитивным ограничениям, которые могут сделать некоторый формат (каким бы он ни был) более полезным для нашего мозга, когда ему нужно извлечь информацию из «изображения» (например, разделение на блоки).