Как правило функция или метод совершают какое-либо действие, поэтому желательно, чтобы из имени было понятно, какое именно действие будет совершаться: CheckForErrors() [ИщиОшибки()] вместо ErrorCheck() [ПоискОшибок()]; DumpDataToFile() [СваливайДанныеВФайл()] вместо DataFile()[ФайлДанных()]. Кроме того, так легче будет отличить метод от класса.
Иногда помогают суффиксы:
Max - чтобы показать максимальное значение;
Cnt [count: количество, подсчёт] - чтобы показать текущее значение какого-либо счётчика;
Key - чтобы показать ключевое значение. Например: RetryMax содержит максимальное количество возможных попыток, а RetryCnt - номер текущей попытки;
Префиксы тоже иногда нелишни:
Is - для обозначения вопроса. Где ни встретится вам Is, вы всегда будете знать, что это вопрос;
Get - получить значение;
Set - установить значение.
Никаких аббревиатур заглавными буквами
Если в имени переменной содержится аббревиатура, лучше вместо всех заглавных оставить только первую букву заглавной, а остальные написать строчными.
Неправильно: GetHTMLStatistic().
Правильно: GetHtmlStatistic().
Обоснование
При формировании имён, содержащих сокращения, люди используют свои интуитивные системы по-разному, поэтому лучше придерживаться единой стратегии формирования имён для всех случаем и добиться тем самым предсказуемости именования. Возьмём, к примеру, NetworkABCKey. Заметьте, что C от ABC и K от Key воспринимаются больше как буквенное сочетание. В принципе, некоторые не возражают против аббревиатур целиком из заглавных, другие же их просто ненавидят; так что в разным проектах люди придерживаются разных стратегий.
Пример