Я читаю Код Макконелла Complete Complete , і він обговорює використання булевих змінних для документування вашого коду. Наприклад, замість:
if((elementIndex < 0) || (MAX_ELEMENTS < elementIndex) ||
(elementIndex == lastElementIndex)){
...
}
Він пропонує:
finished = ((elementIndex < 0) || (MAX_ELEMENTS < elementIndex));
repeatedEntry = (elementIndex == lastElementIndex);
if(finished || repeatedEntry){
...
}
Це мені здається логічним, доброю практикою та дуже самодокументуванням. Однак я вагаюся, щоб почати регулярно використовувати цю техніку, оскільки майже ніколи не стикався з нею; і, можливо, це заплутало б лише через рідкість. Однак мій досвід ще не дуже великий, тому мені цікаво почути думку програмістів щодо цієї техніки, і мені було б цікаво дізнатись, чи хтось регулярно використовує цю техніку чи часто бачив її при читанні коду. Чи варто застосовувати цю конвенцію / стиль / техніку? Інші програмісти це зрозуміють і оцінять, або вважатимуть дивним?