28.10.2003 НовостиАнатолий Шалыто Глубоко ошибается тот, кто думает, что изделиями программиста являются программы, которые он пишет. Программист обязан создавать заслуживающие доверия решения и представлять их в форме убедительных доводов, а текст написанной программы является лишь сопроводительным материалом, к которому эти доказательства применимы. Э. ДейкстраНедавно я стал свидетелем того, как один выдающийся программист (участник двух финалов командных чемпионатов мира по программированию) в течение весьма продолжительного времени не мог понять программу из шести строк на языке Си. Про нее было известно, что она решает классическую задачу, другое решение которой программист знал. Затем мы с ним вышли в Интернет и сравнительно быстро нашли работу, где был весьма внятно описан алгоритм, использованный в указанной программе.Почему исходные тексты не решают проблему понимания программ?Данный факт в очередной раз подтвердил мое мнение, что "Движение за открытые исходные тексты" (Open Source Software) не обеспечивает даже в этом достаточно простом (относительно реальных проектов) случае решения проблемы понимания программ. К счастью, так думаю не только я один. В частности, в работе [1] отмечается, что "центральный вопрос в практике программирования - вопрос о понимании программных текстов. Всегда хорошо иметь исходники, но проблема состоит в том, что зачастую их недостаточно. Чтобы понять некоторую нетривиальную программу, обычно требуется дополнительная ...
читать далее.