Здравствуйте, Serguei666, Вы писали:
S>>>>>В данном (и не только в данном) случае "читабельность" абсолютно объективна. Это скажет любой разумный человек.
S>>>Вы так говорите специально, чтобы я либо признал себя неразумным, либо с вами согласился?
А>>Нет, как вы заметили ниже и в другом письме я привёл способ оценки читабельности.
А>>Она объективна и это факт.
S>Нет, не объективна, и это тоже факт 
Слушайте, ну это не серьёзно просто. Помоему я вполне убедительно доказал её объективность и я думаю что вы это поняли ... ну зам же возражать ради возражения.
S>Иногда полезно для поднятия читабельности количествои строк увеличивать — ну, делать там пустые строку, переносы, комментарии писать. Так что ваш способ оценки — "чем меньше строк, тем лучше", не подходит.
Пустые строки и коментарии я к коду не отношу. И потом где я писал о связи громоздкости и читабельность? Я рассматривал эти понятия отдельно, но всё же лишний код затрудняет чтение исходников и помоему привёл очень яркий пример и дело тут не в 4ох циклах, даже при 2ух циклах goto уместен.
S>Уж если на институт будем ссылаться, то нам там прямо говорили — goto не использовать. "Что и требовалось доказать"
Странные у вас преподы были, наверно они в книжке прочитали "goto — плохо", потом сказали вам, но не потрудились объяснить почему. Если бы этого оператор был совсем не нужен, его бы небыло. Ведь даже новомодный C# и тот без goto не обошёлся.
А>>>>И потом, если читабельность это дело субъективное, нто из-за чего весь сыр бор? Ведь главный минус (и практически единственный) goto это снижение читабельности при его злоупотреблении. Вы когда нибудь видели старые большие программы на Байсике или Фортране? Это то, что называеться Write only code. Это действительно ужас, невозможно понять
S>>>Ну и что? То, что код Write only — не делает чести его разработчикам.
А>>Безусловно. Я это привлё для того, что бы показать истинные причины неприятия goto.
S>Истинные причины — нас так в институте учили. Ни Бейсиковским, ни с Фортрановсим кодом я близко не сталкивался.
Ну что это.

Я же говорил об истинных причинах непрятия goto, а не о том, почему вы его неиспользовали.
А>>>>куда какие переходы и почему.
А>>>>Есть конечно другой негативный аспект goto. Это так называемое нарушение логики программы. Ну то есть нелогичный оператор, не имеющий отношение к логике и выполняющий просто навигацию по коду. Но это из разряда чистой филисофии не связанной с практикой. В данном случае невозможно ненарушить логику. Суть в том что нужно завершить итеративный процесс ... но "логичные" операторы языка не позволяют это сделать сразу. А все извращения с поступенчатым выходом из циклов с помощью флажка есть так же не имеют под собой алгоритмической логики ... они не несут смысловой логической нагрузки. Суть в том что надо выйти из цыклов и для реализации этого вы пишите длинную последовательность операций которая сводиться к простой новигации по коду с целью достичь нужной точки, при этом затрачиваються как вычислительные ресурсы так и память, вместо того что бы зделать goto, cуть котрого в простом изменении указателя команд.
S>>>Ну, про траты вычислительных ресурсов и памяти я сказал. Оценить-то все равно не сможете.
А>>НУ вы же не станете отрицать что они больше и под флаг таки нужна физическая или регистровая память и при этом абсолютно неоправдано?
S>То, что нужна память, орицать не буду. То, что неоправданно — буду.
Я даже нестал читать что вы там писали про мегабаты? Просто нет никкой объективной причины тратить эти, пусть даже небольшие ресурсы.
S>Чай не XX век на дворе, не на ассемблере пишем. Вона винт купил — 120 Гиг. У нас в институте компы были с винтами 20 мег. Та же фигня и с памятью. Кого колышат какие-то 4 байта, если взамен получается программа, написанная правильно?
А правильно, это значит без goto? Да? ТОлько вы даже не пытаетесь понять почему goto это не правильно ...вам просто сказали.
А>>>>Я вас убедил? Неужели всё это я писал зря
.
S>>>А что вы хотите? Чтобы я начал писать goto? "Скорее небо упадет на Землю и Дунай потечет в другую сторону" ((c) турки в ответ на ультиматум Суворова).
А>>Да нет, это не реально.
S>Что небо на землю упадет? Скорее всего нет, конечно. В это и была изюминка такого ответа.
А>>Я лишь хочу, что бы вы перестали считать наличие goto признаком низкой квалификации ... так же как про открытые атребуты в ООП.
S>Не перестану
Потому что это и есть признаки низкой квалификации. Такие программисты понапишут, а я сиди исправляй. Думаете, море удовольствия?
Я не знаю чего они понапишасли у вас там. А переписывать код с goto на код без него, это действительно мало удовольствия, но зачем? Наверно это вам нравится.
Я вот поискал по исходникам VC и обнаружил около 40 файлов с goto, а сколько открытых атребутов в MFC, ужас. Вы хотите сказать что Мелкомягкие отваливают такие бабки неквалифицырованным программерам?
А>>>>Так что в нём страшного?
S>>>Вы же сами и написали, чего. См.выше, читайте начиная с "Есть конечно другой негативный аспект goto"
А>>Я же сказал, что это читая философия ... то есть из области чистых идей не несущих ничего ценного в наш материальный мир. Вы же укланяясь от goto нарушаете логику работы программы ещё более извращённым и нелепым образом.
S>Мой матераильный мир — это время, которое я провожу, исправляя чужие ошибки, в том числе и связанные с public переменными (от goto Бог миловал). Так что лучше их в зародыше задушить, научив народ писать как надо.
Так какие могут быть ошибки с goto?
А>>Признаюсь честно ВЛОМ. Профайлера хорошего под рукой нет а за справочником по командам процессора Intel идти тоже не хочеться. Большого проигрыша здесь не будет, просто он неоправдан, и это не самая большая роблема этого кода.
S>Так я об этом. Большего проигрыша не будет. Тогда что мы экономим, уродуя программу goto и public переменными?
Нет, дело именно в том (и это я не раз аргументировал, только вы не хотите слушать), что уродуеться программа и траттятся ресурсы только ради того, что бы соответстоввать некоторым догматам, которым вас научили в институте.
Даже самую простую задачу можно сделать невыполнимой, если провести достаточное количество совещаний