Главная > Web, Программирование, Скрипты на php, java, ajax > Удобочитаемый код. Отступы и разбиение строк в коде.

Удобочитаемый код. Отступы и разбиение строк в коде.

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

Убедимся в этом на примере. Рассмотрим код без отступов:

for ($i=1;$i<=n;$i++){
for ($j=1;$j<=m;$j++){
for ($k=1;$k<=w;$j++){
if (my_function($i,$j,$w)){
if (my_function_second($i,$j,$w)){
$a = $i+$j-$k;
}
else{
$a = null;
}
$a = $a-$j;
}
$a = $a+$k;
$b = $a-2*$j;
}
$b = $k-$a;
if ($a > $b){
$b = 3*$c;
$a = 0;
}
}
}

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

Итак, расставим в коде отступы и получаем удобочитаемый код:

for ($i = 1;$i <= n;$i++){
    for ($j = 1;$j <= m;$j++){
        for ($k = 1;$k <= w;$j++){
            if (my_function($i,$j,$w)){
                if (my_function_second($i,$j,$w)){
                    $a = $i+$j-$k;
                }
                else{
                    $a = null;
                }
                $a = $a-$j;
            }
            $a = $a+$k;
            $b = $a-2*$j;
        }
        $b = $k-$a;
        if ($a > $b){
            $b = 3*$c;
            $a = 0;
        }
    }
}

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

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

if ($afactor == 'eval1' && $bfactor == 'eval2' && $cfactor == 'eval3' && $dfactor == 'eval4' && $efactor == 'eval5' && $ffactor == 'eval6' && $gfactor == 'eval7' && $hfactor == 'eval8' && $ifactor == 'eval9' && $jfactor == 'eval10') {
	// Тело блока if
	//...
	//...
}

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

А теперь разобьем строчку с условьем на несколько строк, и посмотрим что получится:

if ($afactor == 'eval1' && 
    $bfactor == 'eval2' &&
    $cfactor == 'eval3' &&
    $dfactor == 'eval4' && 
    $efactor == 'eval5' && 
    $ffactor == 'eval6' && 
    $gfactor == 'eval7' && 
    $hfactor == 'eval8' && 
    $ifactor == 'eval9' && 
    $jfactor == 'eval10') {
 
    // Тело блока if
    //...
    //...
}

Ну вот, совсем другое дело! Условья как бы выстроены в удобочитаемый список. Человек, читающий код, не пропустит ни одного условья.

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

Комментирование отключено.