Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
XDiaBLoи указать почему его не рекомендуется использовать, Боюсь, в мире найдётся очень мало авторов книжек, всерьёз способных это сделать. Просто потому, что уже давно потерян контекст, в котором это положение было актуальным. Я бы сравнил неиспользование goto c такой заповедью, как "не вари козлёнка в молоке матери его" (если не ошибся в цитате). Человек, привыкший покупать молоко в тетрапаковских пакетах в супермаркете, просто не сможет в рамках своих повседневных знаний объяснить "почему", и вынужден повторять "запомните это, дети патамушта понять это - нэвазможна потому что так Моисей заповедовал". Что мы в случае goto ежедневно и наблюдаем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:01 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
YossarianЯмб, Аналитик... Мы обращались в фирму 1С с предложением ввести в язык (речь идет о версии 6.0) следующие конструкции : ПОЧЕМУ БЫ И НЕ - проверяет условие еще раз (самый частый глюк старой 1С) НЕПРЕМЕННО - выполняет оператор без сбоев и зависаний ОТНЫНЕ - присваивает значение переменной так, чтобы оно там действительно оказалось. ВО ЧТО БЫ ТО НИ СТАЛО - выводит текст отчета который без этого оператора выводится через раз. НЕ СПАТЬ - отключает внутренний глюкогенератор Я СКАЗАЛ - выполняет команду до тех пор, пока она не выполнится. Почему-то фирма не прислушалась к нашему мнению... Washington Irving и "булеву" аглебру с элементами: НИ ДА НИ НЕТ ТРИ РАЗА НЕТ НЕТ И НЕ ПРОСИ (С) Квант ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:14 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:16 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotegorychда занафига? Хотя бы для того, чтобы не видеть такого ужаса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ну break - это тоже goto ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:16 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNну break - это тоже goto Ага. И вызов подпрограммы. И условный оператор (с тернарным заодно). И оператор выбора. И исключения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:29 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotegorychда занафига? Хотя бы для того, чтобы не видеть такого ужаса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Знаете, вы привели именно тот случай, где некое подобие goto не повредит. А повредит он, только если его тыкать где ни попадя. В крайности то тоже ударяться не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:31 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotZyK_BotaNну break - это тоже goto Ага. И вызов подпрограммы. И условный оператор (с тернарным заодно). И оператор выбора. И исключения. И цикл тогда уж. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:32 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:34 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotZyK_BotaNну break - это тоже goto Ага. И вызов подпрограммы. И условный оператор (с тернарным заодно). И оператор выбора. И исключения. и я о том же. раз мы пользуемся кастрированным goto(его частными случаями), то не плохо бы знать об общей форме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:40 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
XDiaBLojunior idiotZyK_BotaNну break - это тоже goto Ага. И вызов подпрограммы. И условный оператор (с тернарным заодно). И оператор выбора. И исключения. И цикл тогда уж. В операторах организации цикла есть loop но нет явного jmp (приминительно к х86). По-моему и вызов подпрограммы (если мы говорим об инструкции CALL ) - то это не jmp (сиречь - goto). Вот break - да (переход за пределы цикла).... И вообще - чо-то слишком много холивара вокруг одного "ин на"... Пора вернуться к теме... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:43 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
SIMPLicity_По-моему и вызов подпрограммы (если мы говорим об инструкции CALL ) - то это не jmp (сиречь - goto). Разве call это не тупо push (адреса возврата) + jmp? А ret -- pop (адреса возврата) + jmp? XDiaBLo, я привёл один из случаев. Самый простой. Да и пытаться сводить программирование к "набору рецептов" -- тоже некрасивый путь. Нужно просто знать все возможности языка и в каждом конкретном случае выбирать наиболее приятную глазу, легко читаемую, понимаемую и поддерживаемую форму кода. И если для этого нужно использовать goto, то пусть для этого используется goto. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:51 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
XDiaBLoЧто такое ТСО. оптимизация хвостового вызова. XDiaBLoZyK_BotaNps. ps. А о глобальных переменных тоже не нужно знать? Лучше даже не знать. а как тогда программы писать? в чисто ф-ном стиле?. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:54 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
Уже где-то говорили в форуме про goto. Почти всё сказано. Его можно любить или не любить. Исключение лишних goto - это всего-лишь часть задач рефакторинга. Но без jmp ассемблер просто немыслим. А для бинарника, работающего в RealTime и на пределах технических возможностей процессора, каждый лишний jmp сбрасывает кеши команд. Это - таймауты. Это реальная беда с которой надо бороться при отладке производительности видеокодеков к примеру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:55 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNXDiaBLoZyK_BotaNps. ps. А о глобальных переменных тоже не нужно знать? Лучше даже не знать. а как тогда программы писать? в чисто ф-ном стиле?. Пропертями статических классов %)))) что, пожалуй, и есть "глобальные переменные". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:56 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN а как тогда программы писать? в чисто ф-ном стиле?. или плодить кучу параметров? я даже боюсь представить насколько мусорный получится код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 10:57 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotSIMPLicity_По-моему и вызов подпрограммы (если мы говорим об инструкции CALL ) - то это не jmp (сиречь - goto). Разве call это не тупо push (адреса возврата) + jmp? А ret -- pop (адреса возврата) + jmp? Ну вот, если чесно, пытался вспомнить - не помню - всётаки (по-моему), call , ret , iret не раскладываются на более мелкие машинные комманды. Возвраты - ret и iret - точно не раскладываются - по логике - там же выталкивается содержимое регистров адреса . Про call трендеть не буду - прости, но за последние 15 лет ни одного ассемблерного оператора не написал. ... far-far-away go .... И эта, в догонку, в x86 просто не существовало ни одной команды прямого занесения данных в адресные регистры - да и накуя? - кому надо - пользовался косвенным jmp. Ну можно было ещё помутить с занесением адреса в ячейку "ручками", ну да это изврат.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 11:06 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiot: >> Особенно если речь идёт о каком-нибудь языке типа VB6 (в котором нет continue, и иногда попытка обойтись if-ами выглядит удручающе ужасной). когда доходит дело до таких языков, то очень быстро осваиваются приёмы правильного использования goto, так сказать, самостоятельно. Здесь нет особой изотерики, чтобы тратить время на "расширение кругозора". И в качестве замечания добавлю, что break и continue - это таки неявные goto. >> Но выбивать стереотипную дурь "ни в коем случае ни при каких обстоятельствах не использовать goto" -- надо вполне. с этим согласен, я бы даже сказал, что вбивать эту мантру уже давно надо прекратить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 11:34 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotSIMPLicity_По-моему и вызов подпрограммы (если мы говорим об инструкции CALL ) - то это не jmp (сиречь - goto). Разве call это не тупо push (адреса возврата) + jmp? А ret -- pop (адреса возврата) + jmp? XDiaBLo, я привёл один из случаев. Самый простой. Да и пытаться сводить программирование к "набору рецептов" -- тоже некрасивый путь. Нужно просто знать все возможности языка и в каждом конкретном случае выбирать наиболее приятную глазу, легко читаемую, понимаемую и поддерживаемую форму кода. И если для этого нужно использовать goto, то пусть для этого используется goto. Да пусть будет, если где-то нужно. Мне в чистом виде никогда не нужно было, со времён бейсика на спектруме. Но в циклах да, бывает полезно чтобы было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 12:02 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNXDiaBLoЧто такое ТСО. оптимизация хвостового вызова. XDiaBLoZyK_BotaNps. ps. А о глобальных переменных тоже не нужно знать? Лучше даже не знать. а как тогда программы писать? в чисто ф-ном стиле?. Что такого нельзя сделать, без глобальных переменных, в случае ООП? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 12:02 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
XDiaBLoЧто такого нельзя сделать, без глобальных переменных, в случае ООП? В случае ООП, "глобальная переменная" -- это статический класс. Готовы от них отказаться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 12:12 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
junior idiotXDiaBLoЧто такого нельзя сделать, без глобальных переменных, в случае ООП? В случае ООП, "глобальная переменная" -- это статический класс. Готовы от них отказаться? Статический класс это по крайней мере удобнее, особенно меня бесит всякие extern фигачить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 12:15 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
Ещё был язык АП для машины Найри-2 (конец 70-х прошлого столетия) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 14:07 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
XDiaBLoСтатический класс это по крайней мере удобнее, особенно меня бесит всякие extern фигачить. static и extern возникали задолго до проблем рефакторинга и их появление можно объяснить условиями (программно-аппаратная конфигурация) действующими на тот момент. Сегодня - эти условия изменились. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 15:06 |
|
||
|
Программирование на Русском Языке!
|
|||
|---|---|---|---|
|
#18+
maytonXDiaBLoСтатический класс это по крайней мере удобнее, особенно меня бесит всякие extern фигачить. static и extern возникали задолго до проблем рефакторинга и их появление можно объяснить условиями (программно-аппаратная конфигурация) действующими на тот момент. Сегодня - эти условия изменились. Короче я от глобальных переменных избавляюсь любой ценой. Один раз даже в синглтон запрятал, но синглтон правда не только этим занимается, просто эта переменная там в основном и используется, в этом синглтоне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2010, 15:13 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36886671&tid=1340143]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
178ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 282ms |
| total: | 563ms |

| 0 / 0 |
