[an error occurred while processing this directive]
Плохой тон - нечитаемые программы
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено smav 25 марта 2005 г. 20:29
В ответ на: Вопрос тем, кто предпочитает правильно писать на С отправлено maxik_k 25 марта 2005 г. 15:15

В своей статье "GOTO считать вредным" Дейкстра говорил об избыточных переходах в программах (тогда основным языком было фортран, а без GO TO там мало чего напишешь) и призывал даже в отдельных случаях жертвовать эффективностью ради читаемости.
Похожий на ваш пример приведен в книге "Программисткий камень", автора не помню и под рукой текста нет.
Допустим мы делаем инициализацию нескольких устройств, причем при неудаче процесс нужно повторить.
Пример с GOTO
try_again:
if (! init1()) goto try_again;
if (! init2()) goto try_again;
...
if (! initN()) goto try_again;
Программа прозрачна и замечательно читается.
Пример сделанный считающими любой GOTO дурным тоном:
while (init1())
{ while(init2())
{while(init2())
...
}}}..}}
Совершенно нечитаемо, легко допустить ошибку, тяжело исправлять.

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru