отступы в php значения не имеют и применяются только для улучшения читабельности кода

PSR-2. Руководство по оформлению кода

Это руководство продолжает и расширяет PSR-1, основной стандарт написания кода.

Целью данного руководства является снижение когнитивных трений при беглом осмотре кода от разных авторов. Оно делает это путем перечисления общих наборов правил и ожиданий о том, как оформлять PHP код.

Эти правила оформления являются производным от сходства между разными участвующими проектами. Когда разные авторы сотрудничают в нескольких проектах, это помогает иметь один набор нормативов для использования между всеми этими проектами. Таким образом польза этого руководства не в самих правилах, а в обмене этими правилами.

Ключевые слова «ДОЛЖЕН», «НЕ ДОЛЖЕН», «ТРЕБУЕТСЯ», «БУДЕТ», «НЕ БУДЕТ», «СЛЕДУЕТ», «НЕ СЛЕДУЕТ», «РЕКОМЕНДУЕТСЯ», «МОЖЕТ», и «ДОПОЛНИТЕЛЬНО» в этом документе должны быть истолкованы как описано в RFC 2119.

1. Обзор

Код ДОЛЖЕН следовать PSR-1.

Код ДОЛЖЕН использовать 4 пробела для отступов, не табуляцию.

НЕ ДОЛЖНО быть жесткого ограничения на длину строки; мягкое ограничение ДОЛЖНО быть 120 знаков; строкам СЛЕДУЕТ быть 80 символов или менее.

Открывающие фигурные скобки для классов ДОЛЖНЫ быть на новой строке, и закрывающие фигурные скобки ДОЛЖНЫ быть на новой строке после тела класса.

Открывающие фигурные скобки для методов ДОЛЖНЫ быть на новой строке, и закрывающие фигурные скобки ДОЛЖНЫ быть на новой строке после тела метода.

Область видимости ДОЛЖНА быть описана у всех свойств и методов; abstract и final ДОЛЖНЫ быть описаны перед областью видимости; static ДОЛЖНО быть описано после области видимости.

Ключевые слова управляющих конструкций ДОЛЖНЫ иметь один пробел после себя; вызовы методов и функции НЕ ДОЛЖНЫ.

Открывающие фигурные скобки для управляющих конструкций ДОЛЖНЫ быть на той же строке, а закрывающие фигурные скобки ДОЛЖНЫ быть на новой строке после тела конструкции.

Открывающие круглые скобки для управляющих конструкций НЕ ДОЛЖНЫ иметь пробел после себя, а закрывающие круглые скобки для управляющих конструкций НЕ ДОЛЖНЫ иметь пробел перед собой.

1.1. Пример

Этот пример как краткий обзор включает в себя некоторые из ниже указанных правил:

2. Общее

2.1 Основной стандарт написания кода

Код ДОЛЖЕН следовать всем правилам изложенным в PSR-1.

2.2 Файлы

Все PHP файлы ДОЛЖНЫ использовать переводы строк Unix LF (linefeed).

Все PHP файлы ДОЛЖНЫ оканчиваться одной пустой строкой.

2.3. Строки

НЕ ДОЛЖНО быть жесткого ограничения на длину строки.

Мягкое ограничение на длину строки ДОЛЖНО быть 120 знаков; автоматические проверки стиля ДОЛЖНЫ предупредить но НЕ ДОЛЖНЫ выдавать ошибку на мягкие ограничения.

Строкам НЕ СЛЕДУЕТ быть длиннее 80 знаков; более длинные строки СЛЕДУЕТ разбивать на несколько последующих строк не более чем 80 знаков в каждой.

НЕ ДОЛЖНО быть замыкающий пробелов в конце строки на не пустых строках.

Пустые строки МОГУТ быть добавлены для улучшения читабельности и указания связанных блоков кода.

НЕ ДОЛЖНО быть более одного оператора в строке.

2.4. Отступы

Код ДОЛЖЕН использовать отступ в 4 пробела, и НЕ ДОЛЖЕН использовать табуляцию для отступов.

Обратите особое внимание: Использование только пробелов, и не смешивание пробелов и табуляции, помогает избежать проблем с диффами, патчами, историей, и аннотациями. Использование пробелов также позволяет легко вставить тонко-настроенный суб-отступ для межстрочного выравнивания.

2.5. Ключевые слова и True/False/Null

PHP Ключевые слова ДОЛЖНЫ быть в нижнем регистре.

3. Объявление Пространства имен и Use

ДОЛЖНО быть ключевое слово use на каждое объявление.

4. Классы, Свойства, и Методы

Термин «класс» относится ко всем классам, интерфейсам и трейтам.

4.1. Extends и Implements

Ключевые слова extends и implements ДОЛЖНЫ быть объявлены на той же строке, что и имя класса.

Открывающая фигурная скобка для класса ДОЛЖНА идти на своей собственной строке; закрывающая фигурная скобка для класса ДОЛЖНА идти на следующей строке после тела класса.

Список implements МОЖЕТ быть разделен на несколько строк, где каждая последующая строка с одним отступом. При этом первый элемент в списке ДОЛЖЕН быть на следующей строке, и ДОЛЖЕН быть только один интерфейс на строку.

4.2. Свойства

Область видимости ДОЛЖНА быть объявлена на все свойства.

Ключевое слово var НЕ ДОЛЖНО быть использовано для объявления свойства.

НЕ ДОЛЖНО быть более одного свойства объявленного на оператор.

Имена свойств НЕ СЛЕДУЕТ делать с подчеркиванием в качестве приставки для обозначения области видимости protected или private.

Объявление свойства выглядит следующим образом.

4.3. Методы

Область видимости ДОЛЖНА быть объявлена на все методы.

Имена методов НЕ СЛЕДУЕТ делать с подчеркиванием в качестве приставки для обозначения области видимости protected или private.

Имена методов НЕ ДОЛЖНЫ быть объявлены с пробелом после имени метода. Открывающая фигурная скобка ДОЛЖНА идти на своей собственной строке, а закрывающая фигурная скобка ДОЛЖНА быть на следующей строке после тела метода. НЕ ДОЛЖНО быть пробела после открытия круглой скобки, и НЕ ДОЛЖНО быть пробела перед закрывающей круглой скобкой.

Объявление метода выглядит следующим образом. Обратите внимание на размещение круглых скобок, запятых, пробелов и фигурных скобок:

4.4. Аргументы Метода

В списке аргументов, НЕ ДОЛЖНО быть пробела перед каждой запятой, и ДОЛЖЕН быть один пробел после каждой запятой.

Аргументы Метода со значениями по умолчанию должны идти в конце списка аргументов.

Список аргументов МОЖЕТ быть разделен на несколько строк, где каждая последующая строка с одним отступом. При этом первый элемент в списке ДОЛЖЕН быть на следующей строке, и ДОЛЖЕН быть только один аргумент на строку.

Когда список аргументов разделен на несколько строк, закрывающая круглая скобка и открывающая фигурная скобка ДОЛЖНЫ быть установлены вместе на их собственную строку с одним пробелом между ними.

Если они присутствуют, то abstract и final ДОЛЖНЫ предшествовать перед объявлением области видимости.

4.6. Вызовы Метода и Функции

При выполнении вызова метода или функции, НЕ ДОЛЖНО быть пробела между именем метода или функции и открывающей круглой скобкой, НЕ ДОЛЖНО быть пробела после открытия круглой скобки, а также НЕ ДОЛЖНО быть пробела перед закрывающей круглой скобкой. В списке аргументов, НЕ ДОЛЖНО быть пробела перед каждой запятой, и ДОЛЖЕН быть один пробел после каждой запятой.

Списки аргументов МОГУТ быть разделены на несколько строк, где каждая последующая строка с одним отступом. При этом первый элемент в списке ДОЛЖЕН быть на следующей строке, и ДОЛЖЕН быть только один аргумент на строку.

5. Управляющие конструкции

Общие правила стиля для управляющих конструкций следующие:

Тело каждой конструкции ДОЛЖНО быть заключено в фигурные скобки. Это стандартизирует вид конструкций, и уменьшает вероятность внесения ошибок при добавлении новых строк к телу управляющей конструкции.

Оператор if выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок; и что else и elseif находятся на одной линии, как и закрывающая фигурная скобка тела оператора.

Ключевое слово elseif СЛЕДУЕТ использовать вместо else if так что все управляющие ключевые слова выглядят как единые слова.

Оператор while выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

Кроме того, оператор do while выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

5.4. for

Оператор for выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

5.5. foreach

Оператор foreach выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

Блок try catch выглядит следующим образом. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

6. Замыкания

Открывающая фигурная скобка ДОЛЖНА идти на той же строке, а закрывающая фигурная скобка ДОЛЖНА идти на следующей строке после тела функции.

НЕ ДОЛЖНО быть пробела после открывающей круглой скобки списка аргументов или списка переменных, и НЕ ДОЛЖНО быть пробела перед закрывающей круглой скобкой списка аргументов или списка переменных.

В списке аргументов и списке переменных НЕ ДОЛЖНО быть пробела перед каждой запятой, и ДОЛЖЕН быть один пробел после каждой запятой.

Аргументы замыкания со значениями по умолчанию должны идти в конце списка аргументов.

Объявление замыкания выглядит следующим образом. Обратите внимание на размещение круглых скобок, запятых, пробелов и фигурных скобок:

Список аргументов и список переменных МОЖЕТ быть разделен на несколько строк, где каждая последующая строка с одним отступом. При этом первый элемент в списке ДОЛЖЕН быть на следующей строке, и ДОЛЖЕН быть только один аргумент или переменная на строку.

Когда конечный список (или аргументов или переменных) разделен на несколько строк, закрывающая круглая скобка и открывающая фигурная скобка ДОЛЖНЫ быть установлены вместе на их собственную строку с одним пробелом между ними.

Ниже приведены примеры замыканий с и без списка аргументов и списка переменных разбитого на несколько строк.

Обратите внимание, что правила форматирования применяются также когда замыкание используется прямо как аргумент при вызове метода или функции.

7. Заключение

Есть много элементов оформления и практик умышленно опущенных в этом руководстве. Они включают, но не ограничиваются:

Объявление глобальных переменных и глобальных констант

Операторы и присваивания

Комментарии и блоки документации

Приставки и окончания имен классов

Будущее рекомендации МОГУТ пересмотреть и расширить это руководство для решения тех или иных элементов оформления и практик.

Источник

PSR-2. Руководство по стилю кода.

Данная статья, это авторский перевод, описания стандарта. С оригиналом описания Вы можете ознакомиться здесь.

Данное руководство расширяет и дополняет рекомендации, указанные в PSR-1 (основной стандарт написания кода).

Цель данного руководства уменьшить мыслительную сложность восприятия, при изучении кода, написанного другими авторами. Эта цель достигается за счет установления общих правил и соглашений о стилевом форматировании PHP кода.

Данные правила были получены из общих черт проектов, написанных различными членами PHP-FIG. Когда различные авторы работают с различными проектами, то это помогает установить единый набор правил для использования во всех этих проектах. Таким образом, польза данного руководства, заключается не в установке самих правил, а в их максимально широком распространении и использовании.

Встречающиеся ключевые слова «ДОЛЖЕН», «НЕ ДОЛЖЕН», «ТРЕБУЕТСЯ», «СЛЕДУЕТ», «НЕ СЛЕДУЕТ», «РЕКОМЕНДУЕТСЯ», «МОЖЕТ» и «ОПЦИОНАЛЬНО» в данном стандарте интерпретируются как описано в документе RFC 2119.

1. Общий обзор.

1.1. Пример.

Пример кода ниже включает в себя некоторые из описанных в данном стандарте требования, и служит для быстрого наглядного примера:

final public static function bar()
<
// тело метода
>
>
[/CCE]

2. Общие рекомендации.

Основной стандарт стиля кода.

Код ДОЛЖЕН следовать всем правилам описанным в стандарте PSR-1

2.2. Файлы.

Все PHP файлы ДОЛЖНЫ использовать в конце строки символ переноса строки Unix LF (linefeed).

Все PHP файлы ДОЛЖНЫ оканчиваться одной пустой строкой.

Если файл содержит только PHP код, то в конце НЕ ДОЛЖНО быть закрывающего тега [cci]?>[/cci].

2.3. Строки.

НЕ ДОЛЖНО быть строгого ограничения на длину строки.

Допустимый предел длины строки ДОЛЖЕН быть не более 120 символов. Автоматические системы проверки стиля кода ДОЛЖНЫ предупреждать об этом, но НЕ ДОЛЖНЫ выдавать ошибку при таком мягком ограничении.

Строки НЕ ДОЛЖНЫ быть длиннее, чем 80 символов. Если длина строки больше, то СЛЕДУЕТ ее разделить на несколько следующих друг за другом строк таким образом, чтобы длина каждой не превышала 80 символов.

Непустые строки НЕ ДОЛЖНЫ завершаться символами пробелов.

Пустые строки МОГУТ быть добавлены для улучшения читабельности кода, а также для визуального указания логически связанных участков кода.

НЕ ДОЛЖНО быть более одного оператора в строке.

2.4. Отступы.

В коде для отступов ДОЛЖНЫ использовать 4 символа пробела,
но НЕ ДОЛЖЕН применяться символ табуляции.

Обратите внимание: Использование только символов пробела, а не смешивания пробелов с символами табуляции, помогает избежать проблем при работе историей изменения кода, с аннотациями и с патчами. Также использование только символов пробелов, делает проще вставку небольших полу-отступов для выравнивания строк кода.

2.5. Ключевые слова True/False/Null.

Ключевые слова ЯП PHP ДОЛЖНЫ использоваться в нижнем регистре.

Константы ЯП PHP: [cci]true[/cci], [cci]false[/cci] и [cci]null[/cci] ДОЛЖНЫ использоваться в нижнем регистре.

3. Пространства имен и блока с use (импорт/объявление псевдонимов).

Если имеется блок объявления пространства имен [cci]namespace[/cci], то после него обязательно ДОЛЖНА быть одна пустая строка.

Если в коде используется блок импорта/создания псевдонима имени с помощью [cci lang=»php»]use [/cci], то такой блок ДОЛЖЕН располагаться после объявления пространства имен [cci]namespace[/cci].

Для каждого блока импорта/создания псевдонима ДОЛЖНО каждый раз быть использовано одно ключевое слово [cci]use[/cci].

После всего блока [cci]use[/cci] ДОЛЖНА располагаться одна пустая строка.

Список аргументов МОЖНО разделить на несколько строк, таким образом, чтобы каждые последующие строки имели одинаковый отступ. При этом каждый аргумент списка ДОЛЖЕН располагаться на новой отдельной строке

[cce lang=»php»]
bar(
$longArgment,
$longerArgument,
$muchLongerArgument
);
[/cce]

5. Управляющие конструкции.

Общие требования к стилю управляющих конструкций:

Также тело каждой управляющей конструкции ДОЛЖНО быть заключено в фигурные скобки. Это стандартизирует, как выглядят управляющие конструкции, и уменьшает вероятность возникновения ошибок по мере добавления новых строк в тело конструкций.

5.1. if, elseif и else.

Конструкция [cci]if[/cci] выглядит как в примере кода ниже. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок, а также, что [cci]else[/cci] и [cci]elseif[/cci] находятся на той же линии, что и заключительная фигурная скобка из предыдущего тела управляющей конструкции.

[cce lang=»php»]
$value) <
// тело управляющей конструкции
>
[/cce]

5.6. try, catch.

Блок [cci]try catch[/cci] выглядит как в примере кода ниже. Обратите внимание на размещение круглых скобок, пробелов и фигурных скобок.

[cce lang=»php»]
bar(
$arg1,
function ($arg2) use ($var1) <
// тело функции
>,
$arg3
);
[/cce]

7. Заключение.

Существует много элементов стиля и практики, преднамеренно не освещенных в этой рекомендации. К ним относятся, но не ограничиваются:

Будущие рекомендации МОГУТ пересматривать и расширять это руководство для рассмотрения различных элементов стиля и хорошей практики.

Источник

Управляющие конструкции в PHP

Здравствуйте уважаемые начинающие программисты.отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

Вам уже наверное понятно из предыдущих статей, что программа состоит из выражений, строк, чисел, операторов, функций, которые выполняются в определённой последовательности.

Порядок выполнения программы задаёт программист, и применяет он для этого управляющие конструкции языка php. То есть управляющая конструкция — это команда на тот, или иной порядок выполнения программы.

Прежде чем перейти к описанию управляющих конструкций, должен предупредить, что Вы увидите много знакомых названий, так как конструкцией могут быть операторы, функции, циклы, которые мы уже рассмотрели в предыдущих статьях.

Конструкции (возможны определения — инструкция, команда) могут быть как одно-строчными, так и составными, то есть собранными в блок. Блок тоже является отдельной конструкцией, последовательно выполняющей конструкции в ней заключённые.

Всего в PHP существует шесть основных групп управляющих конструкций. Это:

1. Условные операторы.
2. Циклы.
3. Конструкции выбора.
4. Конструкции объявления.
5. Конструкции возврата значений.
6. Конструкции включений.

Давайте рассмотрим их подробно, и все по порядку.

Условные операторы

Мы уже познакомились с условным операторами if, else, elseif в статье «Операторы php», так что сейчас, рассматривая их как управляющие конструкции, у нас получиться повторение пройденного, что как известно, никогда лишним не бывает.

Условные операторы — это самые часто-применяемые конструкции, не только в языке php, но и во всех алгоритмических языках программирования.

Пример одно-строчной конструкции if

Следующим будет пример составной конструкции.

Обратите внимание, что для переноса строки в php применяется, знакомый нам из html, тег
. В дальнейшем мы ещё не раз встретим html теги, применяемые в php коде.

И ещё отмечу, что отступы в php значения не имеют, и применяются только улучшения читабельности кода.

В предыдущем примере, мы рассмотрели вариант, когда инструкция выполняется, если верно заданное условие.

Теперь представьте, что нам нужно исполнить какой либо оператор не только когда условие конструкции if верно, но и тогда когда условие не верно.

В этом случае применяется конструкция else

В этом случае открывается не пустая страница, а запись «Фрукты».

Конструкции выбора

В этом примере сначала будет обработано условие, затем найден оператор case со значением подходящим к этому условию, и только после этого конструкция switch начнёт выполняться.

Циклы, или конструкции повторения.

Циклы предназначаются для многократного (в отличие от конструкции if ) выполнения операторов составляющих тело конструкции.

Процесс выполнения цикла, называется итерацией (iteration — повтор).

В php существует три вида циклов:

1. while и do-while — циклы с не определённым числом итераций.
2. for — цикл с заранее известным числом итераций.
3. foreach — цикл обработки (перебора) массива.

Пример простейшего цикла с одним оператором, обычно их бывает больше.

Подробно рассмотрим, что тут происходит, то есть как работает данная программа.

В третьей строке выполняется первый цикл, так как единица меньше 8, и это подходит под определение true

Конструкция do-while отличается тем, что условие цикла проверяется не до, а после итерации.

В результате, до завершения цикла, обязательно выполнится одна итерация, являющаяся false

Применяется его лучше тогда, когда число итераций известно до начала цикла, и с помощью него, можно выполнять действия более сложные, чем простая переборка значений счетчика.

В следующем примере напишем оглавление к небольшой книге.

Рассмотрим подробно три выражения записанных в условии (круглые скобки) цикла.

$next = 1; — переменная счётчик, начинающая отсчёт с единицы.
$next — определяет продолжительность цикла.
$next++ — определяет шаг изменения значения счётчика. В нашем случае равно единице.

Выражения разделяются между собой точкой с запятой. Можно в одно выражение поместить несколько команд и разделить их запятыми. Тогда то же оглавление можно сделать немного по другому

Правда такой вариант не особо приветствуется, так как несколько затрудняет читабельность кода, из за своей необычности, но всё же имеет право на существование.

В нём в условие цикла вводиться конструкция print

Конструкция foreach — это специальный тип цикла, предназначенный только для перебора массива.

Как видите, на седьмой итерации цикл прервался.

Как видите итерация 3 отсутствует, так как была прервана конструкцией continue

Конструкции объявления

По сути они абсолютно идентичны, и с одинаковым успехом можно применять как одну так и другую, для получения одного и того же результата.

В настоящее время распознаётся две директивы — это ticks и encoding

Директива ticks задаёт число тиков

// Далее сценарий блока
function tick_handler ()
<
echo «Функция выполнена\n» ;
>

// Функция, будет исполняться при каждом тике
?>

Директива encoding применяется для указания кодировки всего скрипта.

Конструкции включений

Конструкции включений применяются для ввода в программу отдельных скриптов и файлов. Благодаря им, программу можно собрать из готового материала.

Так же конструкции включений применяются для уменьшения объёма кода скрипта, когда нужно ввести в код некий текст. Тогда в программу вводится файл txt.

Правда в таком случае возникает угроза безопасности скрипта, и для её решения вместе с txt файлом необходимо ввести в программу константу, а в подключаемых файлах проверять её существование.

Всего в php существует 4 типа конструкций включения, и все они принимают только один аргумент — путь к файлу:

include — подключает файл к программе, при его отсутствии выдаёт предупреждение;
require — подключает файл к программе, при его отсутствии прекращает работу скрипта;
include_once — допускает только одноразовое включение подключённого файла, а при его отсутствии выдает предупреждение;
require_once — допускает только одноразовое включение подключённого файла, а при его отсутствии прекращает работу скрипта;

Конструкции include_once и require_once удобны тем, что исключают путаницу при вложенных включениях, когда есть возможность повторного включения файлов, содержащих объявления функций.

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода
Перемена

Только у нас слово «угу» является синонимом к словам «пожалуйста», «спасибо», «добрый день», «не за что» и «извините», а слово «давай» в большинстве случаев заменяет «до свидания».

Источник

Оформление кода PHP: стандарты и правила

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

Восемь общих правил

Существуют правила, которые подойдут для написания кода на любом языке программирования. Только следование им уже повысит качество вашего кода.

Правила кода PHP

На конец 2017 г. действуют стандарты PHP программирования: PSR-2 и PSR-1. Они устанавливают правила синтаксиса, именования, оформления. Весь код должен быть написан единообразно. Это касается пробелов, отступов, скобок, строк.

Чтобы не запоминать все требования стандартов, можно работать в современной среде разработки — PhpStorm, NetBeans и подобных. Они позволяют автоматически форматировать текст в соответствии с правилами.

Отступы

Правильное оформление кода PHP предполагает его простое визуальное восприятие. Оно достигается с помощью отступов и пробелов. Для формирования отступов используйте пробелы, а не знак табуляции. Каждую строку начинайте с четырех пробелов. Код должен идти лесенкой: раскрываться вправо, затем собираться обратно.

Запомните: один отступ = четыре пробела.

Выделяем отступами тело конструкции, тело метода, блоки импорта, аргументы и подобное.

Правильно

Неправильно

Пробелы

Пустая строка

Правильно

Неправильно

Круглые скобки

Фигурные скобки

Аргументы

Оформляются двумя способами: в одну строку через запятую или в столбик. Аргументы на одной строке пишутся через запятую внутри круглых скобок. Пробел ставится только после запятой.

Правильно

Неправильно

При оформлении в столбик каждый аргумент пишется с новой строки и отделяется двойным отступом. Первая круглая скобка остается на строке вместе обозначением метода. Вторая круглая скобка выносится в отдельную строку вместе с открывающей фигурной скобкой. Между ними пробел.

Правильно

Неправильно

Конструкция switch case

Конструкцию делим на три уровня: switch, case, echo/break. Каждый уровень начинается с отступа. Таким образом, наш код визуально выглядит состоящим из трех столбцов.

Если в конструкции не используется break, поставьте // no break.

Правильно

Неправильно

Конструкция try catch

Тело try и тело catch отделяются одним отступом. Пробелы нужно поставить:

Catch и скобку > ставим на одну строку.

Правильно

Неправильно

Конструкция if, elseif, else

Правильно

Неправильно

Комментарии в коде

Чистый код должен быть правильно закомментирован. К сожалению, встречаются две крайности: подробное комментирование каждой строки и полное отсутствие комментариев. И то, и другое мешает в работе. Избыточное комментирование снижает восприятие кода, отвлекает от понимания его сути. Писать очевидные вещи — тратить свое и чужое время. Иногда из-за слишком подробных комментариев объем кода увеличивается в несколько раз. Закончив с кодом, посмотрите критически. Очевидные и банальные комментарии удалите.

Обратная сторона медали — отсутствие пояснений. Коды со сложной архитектурой, скриптами, с большой вложенностью требуют пометок. В этом случае комментарии помогут быстро ориентироваться в коде другим членам команды. Часто они помогают и самому разработчику кода. Главное — придерживаться золотой середины и комментировать только важные моменты.

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

Чек-лист «Инспекция кода»

Предлагаем чек-лист для самостоятельной проверки чистоты кода. Если вы будете инспектировать чужой код, помните, что программист — творческая профессия. А творческие люди обычно тяжело воспринимают критику. Будьте лояльней.

Желательно провести тестирование. Руководствуйтесь тремя принципами:

Дополнительную информацию по тестированию вы найдете в материале «Тестирование кода для чайников».

Заключение

Код — это не личный захламленный ящик с грудой бумаг. Правильный код — это картотека в Ленинской библиотеке. В нем все структурировано, задокументирована важная информация, есть связи с другими каталогами и библиотеками. Чистый код может разобрать и профи, и начинающий программист. С ним приятно работать, он характеризует уровень мастерства своего разработчика.

Старайтесь следовать принятым правилам, рекомендациям и стандартам. Думайте о тех, кто будет работать с ним после вас. Всегда пробуйте сделать код короче и эффективней. Напишите так, чтобы это понимал не только Бог.

Следование единым правилам упрощает работу программистов. Оформление кода PHP по одному стандарту помогает в командной работе и повышает уровень разработки. Понятие «качественный код» появилось не случайно, так же, как и анекдоты о неспособности спустя время прочитать даже собственный код. Понятный структурированный код сокращает время чтения, позволяет сразу приступить к поиску проблемы.

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

Восемь общих правил

Существуют правила, которые подойдут для написания кода на любом языке программирования. Только следование им уже повысит качество вашего кода.

Правила кода PHP

На конец 2017 г. действуют стандарты PHP программирования: PSR-2 и PSR-1. Они устанавливают правила синтаксиса, именования, оформления. Весь код должен быть написан единообразно. Это касается пробелов, отступов, скобок, строк.

Чтобы не запоминать все требования стандартов, можно работать в современной среде разработки — PhpStorm, NetBeans и подобных. Они позволяют автоматически форматировать текст в соответствии с правилами.

Отступы

Правильное оформление кода PHP предполагает его простое визуальное восприятие. Оно достигается с помощью отступов и пробелов. Для формирования отступов используйте пробелы, а не знак табуляции. Каждую строку начинайте с четырех пробелов. Код должен идти лесенкой: раскрываться вправо, затем собираться обратно.

Запомните: один отступ = четыре пробела.

Выделяем отступами тело конструкции, тело метода, блоки импорта, аргументы и подобное.

Правильно

Неправильно

Пробелы

Пустая строка

Правильно

Неправильно

Круглые скобки

Фигурные скобки

Аргументы

Оформляются двумя способами: в одну строку через запятую или в столбик. Аргументы на одной строке пишутся через запятую внутри круглых скобок. Пробел ставится только после запятой.

Правильно

Неправильно

При оформлении в столбик каждый аргумент пишется с новой строки и отделяется двойным отступом. Первая круглая скобка остается на строке вместе обозначением метода. Вторая круглая скобка выносится в отдельную строку вместе с открывающей фигурной скобкой. Между ними пробел.

Правильно

Неправильно

Конструкция switch case

Конструкцию делим на три уровня: switch, case, echo/break. Каждый уровень начинается с отступа. Таким образом, наш код визуально выглядит состоящим из трех столбцов.

Если в конструкции не используется break, поставьте // no break.

Правильно

Неправильно

Конструкция try catch

Тело try и тело catch отделяются одним отступом. Пробелы нужно поставить:

Catch и скобку > ставим на одну строку.

Правильно

Неправильно

Конструкция if, elseif, else

Правильно

Неправильно

Комментарии в коде

Чистый код должен быть правильно закомментирован. К сожалению, встречаются две крайности: подробное комментирование каждой строки и полное отсутствие комментариев. И то, и другое мешает в работе. Избыточное комментирование снижает восприятие кода, отвлекает от понимания его сути. Писать очевидные вещи — тратить свое и чужое время. Иногда из-за слишком подробных комментариев объем кода увеличивается в несколько раз. Закончив с кодом, посмотрите критически. Очевидные и банальные комментарии удалите.

Обратная сторона медали — отсутствие пояснений. Коды со сложной архитектурой, скриптами, с большой вложенностью требуют пометок. В этом случае комментарии помогут быстро ориентироваться в коде другим членам команды. Часто они помогают и самому разработчику кода. Главное — придерживаться золотой середины и комментировать только важные моменты.

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть фото отступы в php значения не имеют и применяются только для улучшения читабельности кода. Смотреть картинку отступы в php значения не имеют и применяются только для улучшения читабельности кода. Картинка про отступы в php значения не имеют и применяются только для улучшения читабельности кода. Фото отступы в php значения не имеют и применяются только для улучшения читабельности кода

Чек-лист «Инспекция кода»

Предлагаем чек-лист для самостоятельной проверки чистоты кода. Если вы будете инспектировать чужой код, помните, что программист — творческая профессия. А творческие люди обычно тяжело воспринимают критику. Будьте лояльней.

Желательно провести тестирование. Руководствуйтесь тремя принципами:

Дополнительную информацию по тестированию вы найдете в материале «Тестирование кода для чайников».

Заключение

Код — это не личный захламленный ящик с грудой бумаг. Правильный код — это картотека в Ленинской библиотеке. В нем все структурировано, задокументирована важная информация, есть связи с другими каталогами и библиотеками. Чистый код может разобрать и профи, и начинающий программист. С ним приятно работать, он характеризует уровень мастерства своего разработчика.

Старайтесь следовать принятым правилам, рекомендациям и стандартам. Думайте о тех, кто будет работать с ним после вас. Всегда пробуйте сделать код короче и эффективней. Напишите так, чтобы это понимал не только Бог.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *