Вы указываете в именах АПЕКС переменных их тип?
например:
Account accountObj
или
Account objAccount
каких правил наименования переменных вы придерживаетесь?
Вы указываете в именах АПЕКС переменных их тип? например: [code]Account accountObj[/code] или [code]Account objAccount[/code] каких правил наименования переменных вы придерживаетесь?
Uncle Bob не одобрил бы. При объявлении типа переменной уже становится ясно, что это объект типа Account, так что в имени переменной это лишняя информация, которая скорее запутает чем введет ясность.
https://dzone.com/articles/naming-conventions-from-uncle-bobs-clean-code-phil
Uncle Bob не одобрил бы. При объявлении типа переменной уже становится ясно, что это объект типа Account, так что в имени переменной это лишняя информация, которая скорее запутает чем введет ясность. https://dzone.com/articles/naming-conventions-from-uncle-bobs-clean-code-phil
Не читал никаких умных трактатов по поводу наименования переменных, но использую просто правило как и все коллеги. Переменная должна отражать смысл содержимого а не его тип, структуру или что-то еще. Тип всегда можно найти в коде, в отличии от смысла переменной.
Не читал никаких умных трактатов по поводу наименования переменных, но использую просто правило как и все коллеги. Переменная должна отражать смысл содержимого а не его тип, структуру или что-то еще. Тип всегда можно найти в коде, в отличии от смысла переменной.
Прадва использую еще небольшой лайвхак, которые не все приветствуют (подсмотрел его в code style для goLang когда-то). В небольших блоках кода (типа цикла) в пределах 10 строк использовать однобуквенные переменные.
Вот простейший пример который содержит все выше перечисленные правила.
for (Account a : accountsFilterdByFiscalYearAndWeatherInSanFranciscoYesterday) {
console.log(a);
}
Прадва использую еще небольшой лайвхак, которые не все приветствуют (подсмотрел его в code style для goLang когда-то). В небольших блоках кода (типа цикла) в пределах 10 строк использовать однобуквенные переменные. Вот простейший пример который содержит все выше перечисленные правила. [code] for (Account a : accountsFilterdByFiscalYearAndWeatherInSanFranciscoYesterday) { console.log(a); } [/code]
Это у того же Мартина в "Clean Code" написано: чем меньше область видимости переменной, тем короче её имя может быть.
[quote="Dmitry Shnyrev"]Прадва использую еще небольшой лайвхак ... [/code][/quote] Это у того же Мартина в "Clean Code" написано: чем меньше область видимости переменной, тем короче её имя может быть.
Ну я не удивлен что все самое хорошое уже давно придумано за нас
Просто иногда встречаю злостное сопротивление вроде таким простым вещам.
Ну я не удивлен что все самое хорошое уже давно придумано за нас :D Просто иногда встречаю злостное сопротивление вроде таким простым вещам.
Не указываем, считаем что в строго типизированных языках это избыточно и усложняет чтение и понимание кода.
И отрываем за такое руки!
Не указываем, считаем что в строго типизированных языках это избыточно и усложняет чтение и понимание кода. И отрываем за такое руки! https://ru.wikipedia.org/wiki/%D0%92%D0%B5%D0%BD%D0%B3%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F_%D0%BD%D0%BE%D1%82%D0%B0%D1%86%D0%B8%D1%8F
годная ссылка, теперь все понятно
[quote="Dummy"]https://ru.wikipedia.org/wiki/%D0%92%D0%B5%D0%BD%D0%B3%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F_%D0%BD%D0%BE%D1%82%D0%B0%D1%86%D0%B8%D1%8F[/quote] годная ссылка, теперь все понятно
краткий вывод: делай как считаешь удобным, но когда речь идет о 500-строчном апекс контроллере - то указывать тип в названии каждой переменной - это избыточная информация
краткий вывод: делай как считаешь удобным, но когда речь идет о 500-строчном апекс контроллере - то указывать тип в названии каждой переменной - это избыточная информация
Наверное этот вывод верен только в исключительных случаях когда ты сам себе хозяин или являешься руководителем проекта. А вообще на проектах где работает команда надо выработать code style, в том числе и что касается naming convention и строго ему придерживаться. Возможно что большенство проголосует за включение типа переменной в само название потому что это улучшит всем жизнь. Придется делать как решили.
[quote="Den Brown"]краткий вывод: делай как считаешь удобным[/quote] Наверное этот вывод верен только в исключительных случаях когда ты сам себе хозяин или являешься руководителем проекта. А вообще на проектах где работает команда надо выработать code style, в том числе и что касается naming convention и строго ему придерживаться. Возможно что большенство проголосует за включение типа переменной в само название потому что это улучшит всем жизнь. Придется делать как решили.
например:
Account accountObj
Ну вот так делаю наприер когда надо из объекта собрать структуру, чтобы не запутаться accountObj, и accountStruc. Но при этом не просто accountStruc = new AccStructure(accountObj); а что то сложное.
[quote="Den Brown"]Вы указываете в именах АПЕКС переменных их тип? например: [code]Account accountObj[/code] [/quote] Ну вот так делаю наприер когда надо из объекта собрать структуру, чтобы не запутаться accountObj, и accountStruc. Но при этом не просто accountStruc = new AccStructure(accountObj); а что то сложное.
Я в таком случае использую суффикс Wrapper. Типа AccountWrapper
[quote="ace"]Ну вот так делаю наприер когда надо из объекта собрать структуру[/quote] Я в таком случае использую суффикс Wrapper. Типа AccountWrapper :)