Написание строчных комментариев
В интервью данному Dikran Karagueuzian в 2006 году Дональд Кнут отмечает:
Я думаю, что самая большая польза для меня лично от всей этой работы над типографикой была идея того, что я решил назвать «грамотным программированием» (англ.: literate programming), что является способом обращения с компьютерными программами, как с литературой. Компьютерная программа – это то, что должны читать люди, и вы пишете её для людей, а не для компьютера.
В то же время необходимо помнить, что комментарии должны помогать понять хорошо написанный код, а не дублировать его логику или пытаться компенсировать недостатки плохо написанного кода. Код, где может, должен говорить сам за себя.
Для того чтобы написать строчный комментарий в MATLAB необходимо использовать: %
.
Коментарии игнорируются MATLAB при исполнении и явлются информацией только для программистов.
Коментарии можно оставлять на той же строке, что и строчка кода. Это часто удобно для отметки об используемых единицах измерений. Например:
% расчет индекса массы тела
weight = 154; % lb - вес в фунтах
height = 70; % in - дюймы
bmi = weight / height^2 * 703
Блочные, или многострочные комментарии
В MATLAB также можно писать многострочные комментарии:
%{
Этот скрипт вычисляет индекс массы тела (BMI)
по заданным весу в фунтах и росту в дюймах.
Формула расчета BMI:
BMI = (вес в фунтах / (рост в дюймах)^2) * 703
%}
Для того, чтобы закоментировать несколько строчек кода можно выделить код → правая кнопка мыши → Comment
или Ctrl+R.
Для того, чтобы разкоментировать несколько строчек кода можно выделить код → правая кнопка мыши → Unсomment
или Ctrl+T.
Комментирование элементов многострочного определения
Рассмотрим вектор столбец чисел и столбца массива ячеек:
dataArray = [
1
2
3
4
]
cellArray = {
'dog',
'tiger',
'sheep',
'elephant'
}
dataArray =
1
2
3
4
cellArray =
4×1 cell array
{'dog' }
{'tiger' }
{'sheep' }
{'elephant'}
Предположим, что мы хотим закоментировать вторые по счету элементы:
dataArray = [
1
% 2
3
4
]
cellArray = {
'dog',
% 'tiger',
'sheep',
'elephant'
}
dataArray =
1
3
4
cellArray =
3×1 cell array
{'dog' }
{'sheep' }
{'elephant'}
Подход выше не будет работать в случае вектора строки или в случае строки массива ячеек, необходимо использовать троеточие:
dataArray = [
1, ...
... 2, ...
3, ...
4
]
cellArray = {
'dog', ...
... 'tiger', ...
'sheep', ...
'elephant'
}
dataArray =
1 3 4
cellArray =
1×3 cell array
{'dog'} {'sheep'} {'elephant'}
Аналогично можно закомментировать аргумент в многострочной передаче аргументов функции:
result = myfunc(arg1, ...
... arg2, ...
arg2b, ...
arg3);
Разбиение длинной строки на несколько строк
Выше мы рассматривали примеры, в которых кодовые строки были разбиты на несколько строк.
В MATLAB для разбиения длинной строки на несколько строк используется символ троеточия (англ.: elipsis) (...
). Это полезно для улучшения читаемости и структурирования кода:
% Разбивка длинного выражения на несколько строк
result = (a + b + c + d ) ... то что после троеточия считается комментарием
* (e + f + g + h + i + j);
Это часто испольузется при передаче большого количества параметров в функцию.
Добавление комментариев к элементам в многострочном определении
dataArray = [
1
2 % This is the number of wheels on a bicycle
3
4
]
cellArray = {
'dog',
'tiger', % Saber tooth
'sheep',
'elephant'
}
dataArray = [
1, ...
2, ... This is the number of wheels on a bicycle
3, ...
4
]
cellArray = {
'dog', ...
'tiger', ... Saber tooth
'sheep', ...
'elephant'
}
Ячейки кода
В MATLAB ячейки кода (англ.: code cells) разделяют скрипт на независимые исполняемые блоки для удобства разработки и отладки. Каждая ячейка начинается с двойного процента (%%
). Пример:
%% Загрузка данных
data = load('datafile.mat');
%% Обработка данных
processedData = preprocess(data);
%% Анализ данных
results = analyze(processedData);
%% Визуализация результатов
plot(results);
Ячейки кода особенно полезны при итеративной разработке и долгих вычислениях (можно перезапускать только то что необходимо).
Чтобы выполнить код внутри ячейки можно воспользоваться горячими клавишами Ctrl+Enter или правой кнопкой мыши по строке находящейся в ячейке → Run Section
.
Для пошагового запуска кодовых ячеек можно воспользоваться опцией меню EDITOR
-> SECTION
-> Run and Advance
.