Вы указываете в именах АПЕКС переменных их тип?
например:
Account accountObj
или
Account objAccount
каких правил наименования переменных вы придерживаетесь?
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);
}Это у того же Мартина в "Clean Code" написано: чем меньше область видимости переменной, тем короче её имя может быть.
Ну я не удивлен что все самое хорошое уже давно придумано за нас
Просто иногда встречаю злостное сопротивление вроде таким простым вещам.
Не указываем, считаем что в строго типизированных языках это избыточно и усложняет чтение и понимание кода.
И отрываем за такое руки!
годная ссылка, теперь все понятно
краткий вывод: делай как считаешь удобным, но когда речь идет о 500-строчном апекс контроллере - то указывать тип в названии каждой переменной - это избыточная информация
Наверное этот вывод верен только в исключительных случаях когда ты сам себе хозяин или являешься руководителем проекта. А вообще на проектах где работает команда надо выработать code style, в том числе и что касается naming convention и строго ему придерживаться. Возможно что большенство проголосует за включение типа переменной в само название потому что это улучшит всем жизнь. Придется делать как решили.
например:
Account accountObj
Ну вот так делаю наприер когда надо из объекта собрать структуру, чтобы не запутаться accountObj, и accountStruc. Но при этом не просто accountStruc = new AccStructure(accountObj); а что то сложное.
Я в таком случае использую суффикс Wrapper. Типа AccountWrapper ![]()