Программист и работа с текстами

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

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

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

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

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

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

Запись опубликована в рубрике Дележка опытом, Рефлексия, Стандарты с метками , . Добавьте в закладки постоянную ссылку.

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.