[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
программируя на АСМе можно точно так-же без него обойтись.
Я имею ввиду goto в структурном смысле, разумеется.
Свёртка кода вещь конечно хорошая, но приводящая к совершенно
нечитабельным программам, лучше уж использовать вызов функции,
тем более, что на АСМе никто не заставляет придерживаться
строгих правил передачи аргументов, и это можно сделать
максимально эффективно. Поэтому мои программы на АСМе гораздо
лучше структурированны, чем ассемблерный листинг Сишных программ,
где компилёр может такого наворотить...
Так что переход с АСМа на Си не должен вызывать особых проблем,
единственный фактор - психологический, попытка выполнять работу
заместо компилятора. Это всё равно, что взять вместо молотка
строительный пистолет, и забивать гвозди ударами его рукоятки :-)
Ну, тут нет другого выхода, как взять себя за горло, и подавить
это стремление на корню. Пусть Ваши программы поначалу будут не
самыми эффективными, ничего, опыт приходит во время е..бы.
Структурированность - не самоцель, но хорошее средство создания
эффективных, сопровождаемых, читабельных, и в конечном счёте
надёжных программ.
Что касается конкретного goto - как Сишного оператора - то моя рука
не дрогнув поставит его в нужно месте, если это действительно
повысит эффективность+читабельность программы, но... как редко
это бывает! Если рука чешется на goto, то в большинстве случаев
это означает, что алгоритм либо структура данных плохо продуманы.
Вот такое философское мнение для общего случая :-)).
E-mail: info@telesys.ru