Прежде всего, большинство соглашений о коде предотвращает подобные вещи.
Если нет, я обычно добавляю описательный префикс или суффикс прозы:
the_class or theClass infix_or (prefix_or(class_param, in_class) , a_class) or_postfix
Практика, которая обычно соответствует каждому совету по стилю кода, который вы можете найти («длинные имена не убивают», «более длинные имена переменных не занимают больше места в памяти, я обещаю».)
Как правило, если вы считаете, что ключевое слово - это лучшее описание, лучше будет немного хуже.
Заметьте, что самой предпосылкой вашего вопроса вы вводите двусмысленность, что плохо для читателя, будь то компилятор или человек. Даже если это обычай использовать класс, clazz или klass, и даже если этот обычай не настолько обычен, чтобы это был обычай: он берет слово word, точно описательное как слово, и искажает его, эффективно снимая точность w0rd в "Wrd". Кто-то привык к другому соглашению w_Rd, или язык может иметь несколько резких слов для ваших слов.
Большинство из нас могут сказать больше о вещах, чем "Flower", "House" или "Car", поэтому обычно есть что сказать о typeNames, decoratees, class_params, BaseClasses и typeReferences.
На этом заканчивается мой допуск к запутыванию личного кода:
Никогда (!!!) не полагайтесь на ограниченные или загадочные синтаксические правила, чтобы предотвратить конфликт имен с «ключевыми словами». (Не знаю ни одного компилятора, который позволил бы это, но в наши дни вы никогда не знаете ...).
Попробуй, и кто-нибудь будет ** тебя в этой работе, так что __rd, Word будет для тебя похож на TeX!