WackoWiki : YuriKennisman/ПроглатываютсяПустотыМеждуКодами

Однострочные операторы

Т.к. в операторе if () {} фигурные скобки обязательны, но есть его постфиксный аналог, велик соблазн писать короткие операторы вроде

в таком виде:



Делать так крайне не рекомендуется. Это ухудшает общую читабельность программы, затрудняет её пошаговую отладку, затрудняет понимание причин невыполнения оператора. Исключение составляют flow control операторы. Их надо писать в одну строчку, окружая условие скобками:


Ни в коем случае не пишите так:

и уж тем более так:



В качестве «краткого вида записи условных операторов» допустимы также следующие конструкции:



Фактически, «и»/»или» используются здесь в качестве if'ов. Поэтому для того, чтобы подчеркнуть отличие от «и»/»или» в if (), используем в таких конструкциях or и and (и НЕ используем || и &&). В условиях под if (), наоборот, используем || и && (и НЕ используем or и and):


Другое



Сложные регулярные выражения пишем на нескольких строках, при необходимости вставляем комментарии. Пример — см. в cookbook.
SQL-ные запросы стараемся писать структурированно:




Если для обхода хэша не важен порядок, не используйте foreach (keys(%h)) — она создаёт временный массив и при болшом хэше съест много памяти.
Используйте конструкцию:




foreach можно использовать только для того, чтобы обойти хэш в определённой последовательности: