<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://t8.lbstr.eu/index.php?action=history&amp;feed=atom&amp;title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5%3AGOTO</id>
	<title>Обсуждение:GOTO - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://t8.lbstr.eu/index.php?action=history&amp;feed=atom&amp;title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5%3AGOTO"/>
	<link rel="alternate" type="text/html" href="https://t8.lbstr.eu/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:GOTO&amp;action=history"/>
	<updated>2026-11-04T15:12:48Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://t8.lbstr.eu/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:GOTO&amp;diff=26377&amp;oldid=prev</id>
		<title>127.0.0.1: /* Корректность GOTO ссылок после добавления нового раздела. */</title>
		<link rel="alternate" type="text/html" href="https://t8.lbstr.eu/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:GOTO&amp;diff=26377&amp;oldid=prev"/>
		<updated>2018-03-29T20:51:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Корректность GOTO ссылок после добавления нового раздела.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;C хуяли удалили? Скажите не мем? Скажите не срач? Причем удалили прямо в момент допиливания, лол. Перезалил допиленное, ибо воистену. Если уж удалять, удаляйте то что было кошерно.&lt;br /&gt;
:Потому что руки автора растут из GOTO жопа.&lt;br /&gt;
Статья про GOTO - и ни слова про его использование в реализации конечных автоматов? Ну пиздец, немедленно запилите. Самому лень и некогда.&amp;lt;br /&amp;gt;&lt;br /&gt;
: Ну там все-таки GOTO немного не торт, он просто используется для перехода между состояниями и представляет собой функцию или макро, разве нет? Тут речь все-таки про GOTO как оператор. В статье написано, что есть ситуации, когда использование сабжа приемлимо. Обычно, насколько я помню, это прыжок в конец функции в случае ошибки, где происходит удаление памяти, закрытие дескрипторов ну и остальная чистка ресурсов. Это действительно может упростить код (особенно в Си), хотя есть и другие способы, зависит от языка. &lt;br /&gt;
Быдлокодеры с Хабра набигают?&lt;br /&gt;
&lt;br /&gt;
Если статья при удалении была примерно такой, как сейчас, удалившего следует жестоко покарать. И так нормальные статьи не каждый день появляются, так ещё и вахтёрство.—&amp;#039;&amp;#039;Анонимус&amp;#039;&amp;#039;автору надо бы знать о существовании долгих переходов в С, так что и там не надо было goto!&lt;br /&gt;
&lt;br /&gt;
Самая первая фотография - это, случайно, не бейсик для cюбора-денди на обучалке?&lt;br /&gt;
&lt;br /&gt;
== Статья ==&lt;br /&gt;
&lt;br /&gt;
Мне — ня. Ящитаю, нужно выпускать.&lt;br /&gt;
&lt;br /&gt;
Внезапно вполне годная статья. А конечные автоматы не нужны имхо.&lt;br /&gt;
&lt;br /&gt;
А про конечные автоматы и прочие состояния можно, конечно, запилить, но зачем? Может еще про for(;;), while(true) и прочий [[бесконечный цикл]] написать? А за одно и про ивентлупы, ага.&lt;br /&gt;
&lt;br /&gt;
Не, статья годная может получиться, я как жабокоддер потверждаю, что GOTO - устаревшая конструкция, и в высокоуровневых языках нах не нужна, ибо превращает код в лапшу, в то время как в разных сях при написании драйверов и прочей системщине это очень даже нужная вещь. Но, ваистену, именованные блоки мне ближе.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
public void foo(int bar){&lt;br /&gt;
     my_block:{&lt;br /&gt;
          if(bar&amp;lt;10){&lt;br /&gt;
               System.out.println(&amp;quot;Bar&amp;lt;10, plus-plus it!&amp;quot;);&lt;br /&gt;
               bar++;&lt;br /&gt;
               break my_block;&lt;br /&gt;
          }&lt;br /&gt;
          System.out.println(&amp;quot;All is good&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== привет от СА ==&lt;br /&gt;
&lt;br /&gt;
Использовать goto в языках, имеющих процедуры и функции и равносильно забиванию гвоздей гвоздем. Невозможность обойтись без goto означает означает:&lt;br /&gt;
&lt;br /&gt;
а) программист не может в алгоритмы -&amp;gt; быдлокодер detected;&lt;br /&gt;
&lt;br /&gt;
б) программист не знает других языков -&amp;gt; быдлокодер detected;&lt;br /&gt;
&lt;br /&gt;
Другое дело - языки не имеющих таких структур. Касается, как правило, скриптовых языков (shell script), где процедуры записываются с помощью меток (goto), а функции - отдельными подпрограммами (run/start). Но все равно попахивает применением костылей.&lt;br /&gt;
&lt;br /&gt;
== в языке ассемблера ==&lt;br /&gt;
&lt;br /&gt;
А разве JMP (безусловный переход) и Jx (условный переход, вместо x — условие) в языке ассемблера не одно и то же, что и GOTO в языках высокого уровня? Интересно, как кто-то собрался писать полноценные программы без прыжков... никогда не понимал, чем гоуту опасен, хоть им почти не пользовался&lt;br /&gt;
::Слегка разные вещи, потому как в Ассемблере иначе нельзя организовать условные конструкции, if-а там нет, да и циклы с условиями выхода иначе не сделать.&lt;br /&gt;
::: Кстати, старинные диалекты бейсика, из которых к нам и пришел GOTO &amp;lt;номер строки&amp;gt; очень смахивали на ассемблер с добавленным IF-THEN-ELSE. Другие отличия еще поискать надо было. Вот там можно было шикарные кружева плести с помощью сабжа. GOSUB-RETURN были намного поинтереснее (аналог call/ret), но и подпрограмму в таких бейсиках можно было навернуть хоть в середине программы, окружить END&amp;#039;ами (чтобы не орал про RETURN без GOSUB) и сделать обход с помощью тех же GOTO. Тихий ужас в общем.&lt;br /&gt;
::::Можно было. Но так делали только мудаки&lt;br /&gt;
:::::Это если вручную. За не-мудаков это делал компилятор.&lt;br /&gt;
&lt;br /&gt;
&amp;gt; никогда не понимал, чем гоуту опасен,&lt;br /&gt;
&lt;br /&gt;
Тем, что при его использовании, работающую программу может написать даже человек у которого:&lt;br /&gt;
&lt;br /&gt;
1) нет современного компилятора&lt;br /&gt;
&lt;br /&gt;
2) нет сведений, как им ЭФФЕКТИВНО пользоваться.&lt;br /&gt;
&lt;br /&gt;
3) нет денег на покупку мощного компьютера, который &amp;quot;потянет&amp;quot; п.(1)&lt;br /&gt;
&lt;br /&gt;
4) и который, из-за (1),(2),(3) может писать программу только с GOTO.&lt;br /&gt;
&lt;br /&gt;
Написав ее, он тем самым &amp;quot;отнимет хлеб&amp;quot; у &amp;quot;структурных программистов&amp;quot;, (программа которых, при ее трансляции, все равно заменяет все их LOOP на кучу GOTO (а точнее - JMP и Jxx)). А без GOTO &amp;quot;неумехи&amp;quot; (те, кто не признали стандарты &amp;quot;структурных программистов&amp;quot;) и &amp;quot;нищеброды&amp;quot; (без денег на мощный комп.) ничего написать не смогут. И &amp;quot;хлеб не отнимут&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Вот пример таких уродов, которые решили, что в AutoIt3 GOTO не нужен:&lt;br /&gt;
http://en.helpdoc-online.com/autoit_v3/source/html/faq.htm#4&lt;br /&gt;
Ага, &amp;quot;640kb is enough for everyone&amp;quot; - только на новый стиль (наоборот).&lt;br /&gt;
Они надеялись: &amp;quot;мы отсеем новичков (отняв у них GOTO), и все сразу станут опытными&amp;quot;.&lt;br /&gt;
&amp;quot;Больницы закроем - все тут же выздоровеют&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Скажите кто-нибудь им (http://www.autoitscript.com/forum/forum/12-autoit-v3/), что из за их такого отношения многие новички - просто не смогут написать свой первый скрипт. А Гуру в их продукции - все равно не хватит функций.&lt;br /&gt;
&lt;br /&gt;
==G0T0 же!==&lt;br /&gt;
http://images1.wikia.nocookie.net/__cb20100424160603/ru.starwars/images/d/d5/G0-T0.jpg&lt;br /&gt;
сферический, в вакууме.&lt;br /&gt;
:Псс, потише. Я слышал за упоминание персонажей игр BioWare модеры линчу...АААА!!!!&lt;br /&gt;
&lt;br /&gt;
==Pascal==&lt;br /&gt;
В языке Turbo Pascal в модуле CRT имеется функция с символичным для русского человека названием &amp;quot;GoToXY&amp;quot;, перемещающая курсор на нужное место на экране. Допишите, кто-нибудь пожалуйста, а то хрен поймешь вашу вики-разметку, а разбираться влом.&lt;br /&gt;
: остро. по-заграничному. добавил.&lt;br /&gt;
&lt;br /&gt;
==Как мама научила==&lt;br /&gt;
Вот мне мама лет 15 назад казала ГОТО не юзай, а то будут тебя считать быдлокодером, так вот с тех пор и не юзаю, даже в простейших ситуевинах. Родители плохого не посоветуют!&lt;br /&gt;
:Это бабушка плохого не посоветует, а родители могут. Допилите про &amp;quot;Футураму&amp;quot;, это где&lt;br /&gt;
10 SIN&lt;br /&gt;
20 GOTO HELL&lt;br /&gt;
и&lt;br /&gt;
10 HOME&lt;br /&gt;
20 SWEET&lt;br /&gt;
30 GOTO 10&lt;br /&gt;
&lt;br /&gt;
Оператор GOTO не следует держать в собственной памяти, это типичная ошибка новобранца или возомнившего. Исключительное поле действий для операторов - блок схема, которую уважающий себе кибер-специалист всегда сделает (как план действий программного кода).&lt;br /&gt;
&lt;br /&gt;
Это не случайно, что рисование принципиальных схем принято за хороший тон в культурной среде программистов. При их отсутствии, логика будет сосредоточена лишь в одной голове, а будь она самой светлой, командная работа над гиганскими массива кодов станет невозможной. Принципиальная схема же скоординирует же коллективный и облегчит персональный труды.&lt;br /&gt;
&lt;br /&gt;
Резюме. Не нужно держать ничего в голове. Чем меньше она забита, тем легче ей справиться с работой. Столкнувшись же с необходимостью распутать, всегда следует начать с зарисовки принципиальной схемы и заручиться поддержкой заказчика/начальства, пусть на ней всегда будет виза. Тогда ошибка, а они возможны, будет на совести заказчика/начальника, а труд, пусть ошибочный, но полностью оплачен. В противном случае на исполнителя будет навешано обвинение в том, что во всём виноваты он сам (когда вскроется ошибочность логики, а доказательств у исполнителя отсутствующие, что ему так объяснили) и они будут правы, исполнитель мог понять неправильно правильное объяснение.&lt;br /&gt;
:Если схема метода нужна для понимания метода - переписать его [[КЕМ]], [[Быстро,_решительно|быстро, решительно]] (скорее всего, путем разбития на несколько меньших методов) — [[Служебная:Contributions/217.165.23.102|217.165.23.102]] 13:50, 13 октября 2016 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Алсо это японская фамилия например ==&lt;br /&gt;
&lt;br /&gt;
В частности http://en.wikipedia.org/wiki/Maki_Goto&lt;br /&gt;
И вообще: http://en.wikipedia.org/wiki/Goto_(name)&lt;br /&gt;
: Мило, только &amp;quot;имя&amp;quot; а не &amp;quot;фамилия&amp;quot;. В Мунспике принято сначала писать фамилию, а потом имя...&lt;br /&gt;
:: Жаль, пиндосы этого не знают, и пишут таки фамилию в конце. Если не верите, пройдитесь по ссылкам и убедитесь. Собственно достаточно открыть вторую - она начинается со слов &amp;quot;Gotō is a Japanese surname&amp;quot;, а далее расположен список всех известных носителей этой фамилии.&lt;br /&gt;
&lt;br /&gt;
== Алсо ==&lt;br /&gt;
В KOTOR-II был плавающий робот GOTO, один из спутников ГГ.&lt;br /&gt;
&lt;br /&gt;
== Корректность GOTO ссылок после добавления нового раздела. ==&lt;br /&gt;
{{Цитата|pre=1|Кстати, если хотите на своем опыте понять проблему GOTO, попробуйте добавить в эту статью новый раздел, сохранив корректность всех GOTO-ссылок.}}&lt;br /&gt;
&lt;br /&gt;
Блджад, в Бейсике есть оператор RENUM, который мгновенно приводит всю нумерацию строк в кошерный вид, (10, 20, 30, etc) даже с учётом всех перенаправлений операторами GOTO. Нет никаких трудностей с корректностью GOTO-ссылок, ибо есть RENUM.&lt;br /&gt;
&lt;br /&gt;
Алсо, есть оператор REM который позволяет комментировать, на какую подпрограмму ссылается GOTO. Так что проблема оператора GOTO это проблема быдлокодеров не желающих их комментировать.&lt;br /&gt;
: REM это вообще самый важный оператор в Бейсике, но увы - не все это понимали.&lt;/div&gt;</summary>
		<author><name>127.0.0.1</name></author>
	</entry>
</feed>