Madzi писал(а):
Что поделать. Без теории никому нельзя. Иначе будем постоянно ходить по граблям.
Теория без практики мертва.
Madzi писал(а):
Мне бы очень понравилось, потому что винду бы не смогли продать до тех пор пока не выловили и уничтожили большинство присутствующих в ней ошибок.
Ее бы просто не выпустили. Сидели бы вы сейчас на чем-нибудь типа ZX-Spectrum и программировали на бэйсике - как раз к настоящему времени там бы все ошибки вычистили
Madzi писал(а):
Не понял вашу вторую часть, несмотря на смайлик. У вас "программой" что-то ещё называется?
"Программа" в терминах ББ и в "классическом" виде (exe) - разные штуки. Нет?
Madzi писал(а):
Хорошая программа не будет обрабатывать коды ошибок, она просто не допустит ошибочной ситуации.
Опять ерунду какую-то говорите. Покажите мне программу, которая не даст мне выдернуть нетворку из компа. А если вы про программные ошибки, то расскажите оберонщикам, что хотите лишить их ASSERT'а - они вам быстро расскажут как сильно вы неправы
Madzi писал(а):
Не знаю, что вы имели ввиду отправляя меня в википедию
Извините, что отправил на википедию, просто более адекватной ссылки под рукой нет. Впрочем на википедии все основное рассказано (хотя по моему мнению не хватает нужных акцентов).
Madzi писал(а):
Я внимательно изучил статью и хочу вам сказать, что здесь, в нарушение любой структурности, имеет место скрытая передача управления через жопу (извините за мой французский). Я конечно понимаю, что некоторые от этого кайф ловят... Но у меня стандартная ориентация.
Блин. Ну что вы носитесь со своей структурностью? Это самоцель такая или что? Это всего лишь средство для улучшения качества программ. И борьба с goto ведется не из принципа, что оно не структурно, а потому что качество программ страдает. А структурность, как подход, позволяет избавиться от goto предлагая другое решение тех же проблем, которое решает goto. Как только структурность (во всяком случае в вашем понимании, потому что мы имеем некоторые расхождения в ее понимании) идет против качества или нифига не решает - нафиг такую структурность. Берем другое средство. Помимо структурности есть другие способы повысить качество. Механизм исключений - одно из таких средств. По моему мнению совершенно ортогональное структурности (при правильном использовании).
Лет 5 назад я сам доказывал на форумах, что "исключения - это goto, только еще хуже, потому что фиг знает куда оно улетит и кто его поймает". Пока не увидел как можно правильно писать с исключениями
Насколько яснее и прозрачнее становится код. Разница примерно такая же как между макаронным кодом с кучей goto и кодом в лучших традициях структурного программирования
Как это показать на примере - я не знаю, надо просто поработать с
правильным кодом.
Madzi писал(а):
И ответная просьба - прочтите наконец Дейкстру и воздержитесь от написания сюда постов, если они прямо противоречат тому, о чём вы прочтёте.
Я прочту Дейкстру, если мне скажут, что я там найду что-то принципиально новое - помимо того, что в популяризованной форме изложено у Гриса. Еще раз повторюсь - любая теория хороша, если она помогает в практике. Если она не помогает или даже мешает - практика использует другую теорию или адаптирует существующую.