Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2014, 08:59   #1
Linel
Форумчанин
 
Аватар для Linel
 
Регистрация: 21.02.2009
Сообщений: 372
По умолчанию Стиль кода: фигурные скобки

Тема "как лучше" весьма заезжена уже:

1)
PHP код:
function a() {

2)
PHP код:
function b()
{

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

Я сам лично работаю сейчас на джаве и вариант 1) мне ближе.

Но вот незадача. Какое-то время назад возникла необходимость поработать на PHP. И часть фреймворков (примера ради возьмем CodeIgniter) в своих библиотеках использует вариант фигурных скобок 2).

Собственно вопрос.
Если вы работаете самостоятельно (то есть один) над каким-то проектом и используете фреймворк, вы организуете свой код в едином стиле с этим фреймворком или придерживаетесь своего стиля?

Ведь в первом случае вам придется от проекта к проекту менять стиль написания кода и следить, чтобы он соответствовал используемой системе. А во втором случае у вас не будет единого стиля написАния кода.

В прочем, это касается не только скобок, но и названий методов, переменных (underscore vs camelCase) и т.д.

Вообщем, чисто из любопытства. Придерживаетесь конкретного стиля во всех проектах или меняете его в зависимости от фреймворка?
No name. Just Linel.
Linel вне форума Ответить с цитированием
Старый 22.04.2014, 09:57   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

С какого бодуна менять свой стиль из-за стиля фреймворка?
А если используете два (и более) фреймворков и у каждого свой стиль, что делать будете?
waleri вне форума Ответить с цитированием
Старый 22.04.2014, 10:19   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

мой стиль в основном второй.

насчет именований предпочитаю camelCase, но недавно задумался об этом.

а стиля стоит придержеватся в пределах проекта, а не по юзанию фреймворка.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 22.04.2014, 10:32   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
С какого бодуна менять свой стиль из-за стиля фреймворка?
А если используете два (и более) фреймворков и у каждого свой стиль, что делать будете?
В РНР это не редкость. У каждого фреймворка там есть свой рекомендации по стилю кода, имен. А 2 фреймворка в одном проекте РНР не видел, чтобы использовали. Вообще по идее имеет значение только имена классов и неймспейсов для autoloader'а, может еще имена методов в контроллерах и т.д.

Но в последнее время продвигается общий стандарт стиля (PSR, http://www.php-fig.org/) и вроде бы многие современные фреймворки его используют.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 22.04.2014 в 10:37.
Alex11223 вне форума Ответить с цитированием
Старый 22.04.2014, 10:52   #5
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Никогда не заморачивался над стилем. Но, раз пошла такая пьянка, использую два стиля.

Код:
function a()
{

}
Это, для функций с большим количеством операторов. Это позволяет, внутри функций, отслеживать вложенность многокомандных операторов.
Например так:
Код:
function a()
{
  if()
  {
    operator0;
    if()
    {
      operator1;
      operator2;
    }
  }
}
И
Код:
function b(){operator; operator; operator}
Для функций, у которых два - три оператора. Такая конструкция, позволяет не растягивать код, скобками.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 22.04.2014, 11:04   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я первый стиль юзаю. Так читабельней.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.04.2014, 11:19   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Так кроме фигурных скобок еще есть:
а) обычные скобки (ставить ли пробелы, как переносить когда много аргументов)
б) имена функций/методов
в) имена классов
г) имена переменных
д) имена свойств
е) имена полей
ё) имена констант
ж) имена файлов, количество классов на файл
з) имена неймспейсов
и) имена интерфейсов
й) имена Exception'ов
к) TABы vs пробелы
л) количество пустых строк между методами, классами, ...
м) порядок имен в #include/using/import
н) порядок членов класса: сначала свойства, потом методы, или наоборот?
о) и public сначала или private?
п) а конструкторы куда? Сверху? Снизу?
р) а this писать при любых обращениях к членам класса?
с) else (в if {... } else { ... }) на одной строке с закрывающей скобкой if'a или на следующей
т) пробелы рядом с операторами (=, ==, +, -, *, /, mod, ...)
у) документирование, комментарии, xmldoc, type-hinting и т.д.
ф) длинные логические выражения как переносить? a && b && c ... && z — && ставить на новой строке или оставлять на предыдушей?
х) макс. длина строк
ц-∞) специфеское для языка, паттерна (mvc/mvvm/...), фреймворка
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 22.04.2014 в 11:21.
Alex11223 вне форума Ответить с цитированием
Старый 22.04.2014, 13:17   #8
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Цитата:
Придерживаетесь конкретного стиля во всех проектах или меняете его в зависимости от фреймворка?
Меняю стиль в зависимости от стиля команды, в которой работаю над проектом.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 22.04.2014, 14:00   #9
Linel
Форумчанин
 
Аватар для Linel
 
Регистрация: 21.02.2009
Сообщений: 372
По умолчанию

Цитата:
С какого бодуна менять свой стиль из-за стиля фреймворка?
Я поясню.
Когда работаю долгое время над проектом и важна моя производительность - намного легче читать, писАть и рефакторить код, написаный в едином стиле.

Приведу аналогию. Представьте, читаете вы роман. Длинный такой, интересный. Пытаетесь вникнуть в его идею. И вдруг, с сотой страницы у вас весь текст отформатирован bold'ом и italic'ом. С одной стороны, все ок. Слова - есть слова. Смысл романа от этого не изменится. Но потребуется время, чтобы "переключиться" на новый стиль оформления.
No name. Just Linel.
Linel вне форума Ответить с цитированием
Старый 22.04.2014, 14:02   #10
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от Linel Посмотреть сообщение
Я поясню.
Когда работаю долгое время над проектом и важна моя производительность - намного легче читать, писАть и рефакторить код, написаный в едином стиле.

Приведу аналогию. Представьте, читаете вы роман. Длинный такой, интересный. Пытаетесь вникнуть в его идею. И вдруг, с сотой страницы у вас весь текст отформатирован bold'ом и italic'ом. С одной стороны, все ок. Слова - есть слова. Смысл романа от этого не изменится. Но потребуется время, чтобы "переключиться" на новый стиль оформления.
так а причем тут фреймворк тем не менее?
или вы про то что как принято писать на этом фреймворке? или про стиль сорцов/примеров самого фреймворка?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
написать программу.Определить, корректно ли расставлены в строке круглые и квадратные скобки. Скобки могут быть вложенными цезарь Общие вопросы по Java, Java SE, Kotlin 3 22.06.2013 01:29
Скобки illuha123 Общие вопросы Delphi 4 27.01.2013 13:30
Скобки в С Jony217 Помощь студентам 3 15.03.2011 17:49
скобки Rom@shka Общие вопросы C/C++ 1 01.04.2009 17:37
фигурные кнопки ale_krolik Win Api 1 27.11.2006 19:28