Придерживаетесь ли вы соглашения Yii, называя переменные в г

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.

Придерживаетесь ли вы соглашения Yii, называя переменные в горбатом регистре?

да
26
79%
нет
7
21%
 
Всего голосов: 33

Аватара пользователя
artos
Сообщения: 38
Зарегистрирован: 2011.05.17, 17:20

Придерживаетесь ли вы соглашения Yii, называя переменные в г

Сообщение artos »

Для php, я не встречал ранее таких соглашений, писал в нижним регистре с подчеркиванием переменные, название методов и классов в горбатом регисре.

Вот не знаю, стоит ли переучиться ради Yii.
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение kukuruku »

тут еще странность в том, что имена полей таблиц рекомендуется называть имя_поля, соответственно проперти моделей тоже будут с подчеркиванием
taral14
Сообщения: 236
Зарегистрирован: 2011.02.26, 23:48

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение taral14 »

тут еще странность в том, что имена полей таблиц рекомендуется называть имя_поля, соответственно проперти моделей тоже будут с подчеркиванием
И если продолжить эту тему то геттеры у моделей писать такого вида getUser_name для использования $mode->user_name тоже не выход.. Потому я думаю что в базе поля лучше тоже горбатом регистре писать.
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение RusAlex »

не все проперти моделей входят в таблицы в чистом виде.
Аватара пользователя
because
Сообщения: 689
Зарегистрирован: 2010.09.30, 22:01

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение because »

называю по настроению, и так и так
RTFM !
Аватара пользователя
artos
Сообщения: 38
Зарегистрирован: 2011.05.17, 17:20

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение artos »

kukuruku писал(а):тут еще странность в том, что имена полей таблиц рекомендуется называть имя_поля, соответственно проперти моделей тоже будут с подчеркиванием
точно подметил, я даже не подумал об этом.
Аватара пользователя
artos
Сообщения: 38
Зарегистрирован: 2011.05.17, 17:20

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение artos »

because писал(а):называю по настроению, и так и так
Это уж совсем плохо))
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение rak »

в БД все в нижнем, остальное в горбатом. А что плохого? Зато сразу видно где поля из БД, а где геттеры.
Кстати эта тема уже недавно поднималась. Как я уже писал, если так не нравится - можно перекрыть поля из БД геттерами в горбатом регистре.
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение rak »

taral14 писал(а):
тут еще странность в том, что имена полей таблиц рекомендуется называть имя_поля, соответственно проперти моделей тоже будут с подчеркиванием
И если продолжить эту тему то геттеры у моделей писать такого вида getUser_name для использования $mode->user_name тоже не выход.. Потому я думаю что в базе поля лучше тоже горбатом регистре писать.
геттер можно описать так

Код: Выделить всё

public function getUserName() {
    return $this->user_name;
}
 
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение kukuruku »

rak писал(а):
taral14 писал(а):
тут еще странность в том, что имена полей таблиц рекомендуется называть имя_поля, соответственно проперти моделей тоже будут с подчеркиванием
И если продолжить эту тему то геттеры у моделей писать такого вида getUser_name для использования $mode->user_name тоже не выход.. Потому я думаю что в базе поля лучше тоже горбатом регистре писать.
геттер можно описать так

Код: Выделить всё

public function getUserName() {
    return $this->user_name;
}
 

было бы хорошо если бы гии автоматом так делал
TM123
Сообщения: 608
Зарегистрирован: 2011.06.09, 11:18

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение TM123 »

1. PHP в принципе регистрозависимый язык, хотя эта регистрозависимость проявляется весьма странным способом, в одних местах регистр имеет значение, в других нет. Встречался с ситуациями регистрозависимости, но как и когда она используется самим PHP для меня остается тайной, я так и не вывел закономерности. Возможно обнаруженные мной случаи являются ошибками интерпретаторов PHP конкретных версий, я склоняюсь именно к этому, так как устойчивых закономерностей регистрозависимости я найти не смог, но такие факты я наблюдал, когда GetId() вызывалось, а getid() говорило что метод не определен.
2. Если говорить конкретно о самом YII, то следует придерживаться регистра, т.к. для настроек очень многих вещей используются индексы массивов, а они в свою очередь однозначно регистрозависимые. Это значит, когда вы называете в массиве индекс test1, потом называете метод класса actionTest1, то название у вас будет определено как Test1, и далее при поиске в массиве по индексу test1<>Test1, у вас ничего не будет найдено. Конечно же это все лечится на уровне фреймворка, но каждый раз применять strtolower или strtoupper очень накладно по ресурсам, думаю поэтому в фреймворке и не делают это, не считая еще и того, что читаемость исходников фреймворка резко упадет, как и легкость его доработки. Так же в самом фреймворке есть места, которые разделяют названия методов по большой букве, поэтому лучше писать названия так и в такой форме, как они пишутся в фреймворке, так будет меньше проблем, в противном случае где-то проканает, а где-то придется разбираться с ошибками.
3. О _ в названиях полей, об этом уже говорили, так лучше делать, чтобы у вас случайно не совпали имя поля в таблицы и имя определенной вами самими переменной в модели. Это становится более вероятным при изменении структуры базы, можно совершенно не задумываясь сделать в таблице новое поле, которое совпадет по имени с уже определенным свойство модели и дальше получить очень странную и возможно блуждающую ошибку, это конечно будет все найдено и исправлено, но времени на поиск причин может быть потрачено много, особенно если до этого вы не работали над данной моделью.
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение slavcodev »

TM123 писал(а):можно совершенно не задумываясь
главное чтоб это не вошло в привычку :D
Жду Yii 3!
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение rak »

kukuruku писал(а):было бы хорошо если бы гии автоматом так делал
а что мешает сделать свой шаблон?
flam
Сообщения: 129
Зарегистрирован: 2011.04.10, 11:23

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение flam »

Меня воротит от camelCase'а, но приходится мириться :evil:
Каждый раз, открывая IDE, пару минут трачу на утешение yarrrrrrости ))
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение slavcodev »

flam, relaxTakeItEasy :)
Жду Yii 3!
Аватара пользователя
timlar
Сообщения: 1382
Зарегистрирован: 2009.09.19, 17:49
Откуда: Украина, Днепропетровск
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение timlar »

flam писал(а):Меня воротит от camelCase'а, но приходится мириться :evil:
Каждый раз, открывая IDE, пару минут трачу на утешение yarrrrrrости ))
Меня воротит только если в проекте используются одновременно все виды именования. Вот текущий мой проект, который приходится поддерживать, страдает этой болезнью. Сколько существует методов именования переменных, классов, функций и т.д. - все они есть в проекте. При чем писал один человек. Что при этом курилось, мне не известно. :)
Twitter: @timlar_ua
Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение Stamm »

Я быстро привык к camelCase. На прошлом работе ещё был жёсткий style gide: в начале имени переменной должен быть тип: $oPost, $aComments, $iCount и тому подобное. Сначала был внутреннее сопротивление, сейчас уже привычно, почти везде использую.
Согласен с Timlar, главное чтобы был единый метод стиля кода для проекта/команды, иначе каждый будет городит своё. На моей практике был один индивидум, который использовал 3 пробела вместо таба. Прямо хочется взять и ... угостить тортом.
Аватара пользователя
Kirill
Сообщения: 128
Зарегистрирован: 2010.08.28, 22:34

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение Kirill »

kukuruku писал(а): было бы хорошо если бы гии автоматом так делал
Излишний код.
github profile: https://github.com/kirs
Аватара пользователя
timlar
Сообщения: 1382
Зарегистрирован: 2009.09.19, 17:49
Откуда: Украина, Днепропетровск
Контактная информация:

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение timlar »

Stamm писал(а):На моей практике был один индивидум, который использовал 3 пробела вместо таба. Прямо хочется взять и ... угостить тортом.
Я использую 4 пробела вместо табов. ИМХО, как-то красивее смотрится. Не люблю, когда в коде табы. Вчегда в виме делаю :retab, для преобразования табов в пробелы.
Twitter: @timlar_ua
taral14
Сообщения: 236
Зарегистрирован: 2011.02.26, 23:48

Re: Придерживаетесь ли вы соглашения Yii, называя переменные

Сообщение taral14 »

Я использую 4 пробела вместо табов. ИМХО, как-то красивее смотрится. Не люблю, когда в коде табы. Вчегда в виме делаю :retab, для преобразования табов в пробелы.
И правильно делаете. Вообще правильная практика использовать пробелы вместо табов
Ответить