Циклы криво реализованы. И вот почему.

  Рет қаралды 95,099

ExtremeCode

ExtremeCode

3 ай бұрын

Подпишись на наш Telegram Канал 🖤 t.me/extremecode
В этом видео я объясняю за циклы во всех языках программирования. Какие они бывают, зачем они нужны и самое главное, почему они не совсем нужны. Да они же НЕПРАВИЛЬНО СПРОЕКТИРОВАНЫ!
Лицензия Creative Commons Attribution 4.0 на использование трека Hyperfun (исполнитель: Kevin MacLeod): creativecommons.org/licenses/...
Источник: incompetech.com/music/royalty-...
Исполнитель: incompetech.com/

Пікірлер: 700
@ExtremeCode
@ExtremeCode 3 ай бұрын
Братан, хорош, давай подпишись на наш Telegram канал, мы там байки и кулстори травим 🖤 t.me/extremecode А для бустеров у нас есть эксклюзивный контент: boosty.to/extremecode
@LithiumDeuteride-6
@LithiumDeuteride-6 3 ай бұрын
Реально, есть только cycle(){...} а какой цикл уже по контексту. cycle(a
@user-pl1tb5gp3r
@user-pl1tb5gp3r 3 ай бұрын
Программирую 10 лет. Сегодня впервые узнал про циклы! Топ контент!
@user-wc4sy3xs9p
@user-wc4sy3xs9p 3 ай бұрын
Вот они nocode программисты
@myriaxont
@myriaxont 3 ай бұрын
Сразу видно - ФП-шник.
@user-yn1gk6qw7l
@user-yn1gk6qw7l 3 ай бұрын
Ска... я завис. Не могу понять.. Хочу ли я это развидеть??
@ildar5552
@ildar5552 3 ай бұрын
10 лет программирую на 1с. Сегодня впервые узнал, что есть ещё и другие языки программирования! Топ контент!
@Tdmmilestone
@Tdmmilestone 3 ай бұрын
Какие еще циклы? 😳
@_aDeer_
@_aDeer_ 3 ай бұрын
жду следующий видос про основу всего программирования - про комментарии в коде
@EvgenOl
@EvgenOl 3 ай бұрын
Особенно про те, удаление которых крашит код :)
@BeDb_MeDb
@BeDb_MeDb 3 ай бұрын
А че, еще и комментировать можно было?:-D
@juke_crusader
@juke_crusader 3 ай бұрын
Уже пять лет жду видео о том, как компилировать мой код на пайтоне (я пишу в блокноте)
@evgeniygorkaviy4690
@evgeniygorkaviy4690 3 ай бұрын
Комментарии - зло. Код надо документировать.
@shishlinsv
@shishlinsv 3 ай бұрын
И про документирование кода! (summary)
@i-am-ultra
@i-am-ultra 3 ай бұрын
Далее в программе: видео о ide, видео о переменных, видео о условных операторах
@bulinchik1889
@bulinchik1889 3 ай бұрын
А видео о переменных уже есть, смотрите на канале
@i-am-ultra
@i-am-ultra 3 ай бұрын
@@bulinchik1889 программирование для маленьких и тупых вернулось, но в этот раз для ещё более маленьких и ещё более тупых
@whyyyyyyyyyyyyyyyyyyyyyyyyyyry
@whyyyyyyyyyyyyyyyyyyyyyyyyyyry 3 ай бұрын
Скоро доберемся до списков... а там через кордан и в вывод/ввод данных и на свободу
@evgeniygorkaviy4690
@evgeniygorkaviy4690 3 ай бұрын
О фишках Windows, о которых мы не знали.
@neveryirosold3958
@neveryirosold3958 3 ай бұрын
​@@bulinchik1889😅
@tozpeak
@tozpeak 3 ай бұрын
Щас бы доебаться к фору за то, что он обеспечивает видимость переменных счётчика в рамках заголовка и тела цикла. Чтобы какой-нибудь умник не пошёл использовать счётчик предыдущего цикла у себя без переинициализации. И организацию проверки с изменением счётчика в одной строке, чтобы не бегать в конец 100500 строчного цикла.
@Sunr1sen2
@Sunr1sen2 3 ай бұрын
С языка снял
@BeDb_MeDb
@BeDb_MeDb 3 ай бұрын
К циклам я претензий не имею. Тот же repeat например и пр. А вот к их использованию, когда человек явно должен просто по всем элементам пройтись без создания нового списка измененных значений (привет люди которые считают, что map ровно такой же а то и быстрее forEach) они есть. Собственно, если это есть, значит кому-то оно было нужно и либо ты не столкнулся с местом где это нужно, либо не понимаешь/чувствуешь концепцию. Мы же сами заложники привычек. Неявно читаемую идею, что хватит вносить в языки на каждый чих оббертку - поддерживаю. Потом в таком лесу состаришься. В общем идей в видосе много, но тема сисек не раскрыта.
@evgeniygorkaviy4690
@evgeniygorkaviy4690 3 ай бұрын
Чтобы умник не переиспользовал счётчик, счётчик должен существовать только в контексте тела цикла. Во взрослых языках всё для этого сделано. Кривые руки, конечно, никто не отменял.
@azhonoredground9855
@azhonoredground9855 3 ай бұрын
Это прямо как с неявной типизацией через var. Вроде функционально тоже самое что и явная, а при проверке приходится после этого искать источник и во что он конвертируется
@hunterofthedemon
@hunterofthedemon 3 ай бұрын
Здарова Свен ​@@Sunr1sen2
@chuprikovs30
@chuprikovs30 3 ай бұрын
Голосом Линдемана: "Do... Do While... Do While For..."
@user-mf9bf9fi8z
@user-mf9bf9fi8z 3 ай бұрын
Do While For GoTo... Do While For GoTo... Do While For GoTo...
@thenatron6136
@thenatron6136 2 ай бұрын
... und filter map reduce!
@vadimcherepenichev4072
@vadimcherepenichev4072 14 күн бұрын
Вы боги!!!!
@user-mf9bf9fi8z
@user-mf9bf9fi8z 14 күн бұрын
@@vadimcherepenichev4072 ну что вы, какие боги, так, просто ангелы, гыгы
@extradip8587
@extradip8587 3 ай бұрын
Вообще ни о чем видео, претензия к for и другим операторам просто идиотская: "давайте вместо простых и понятных операторов для определенных ситуаций всегда использовать один и тот же и костылями его приводить к тому, от чего мы отказались, чтобы ну это самое ну просто"; про goto тезиса никакого не увидел, просто упомянулся зачем-то; а "не используйте коллекции в качестве циклов" просто невероятная мысль. Ни развлекательный, ни познавательный и не контент. Мусор
@AlexandroLavichez
@AlexandroLavichez 3 ай бұрын
Согласен, автор дегенерат
@rebrov_vyacheslav
@rebrov_vyacheslav 3 ай бұрын
@@AlexandroLavichez скорее провокатор, вкидывая очевидную дичь, пытается накрутить комментов.. как видим даже чутка получается
@chakchaky8521
@chakchaky8521 3 ай бұрын
Да, соглашусь тут... До гото докатился автор... Я с гото начинал... действительно полная дичь...но её уже нету лет так 20.
@TPiPoloSkiAdidass
@TPiPoloSkiAdidass 3 ай бұрын
видос только для того чтобы вставить рекламу гайс вы шо не поняли?
@MrChelovek68
@MrChelovek68 2 ай бұрын
Ну,не считая этого видео, человеки очень любят бить себя по рукам,пытаясь редуцировать имеющийся базис инструментов. Срачи о линупсе вс виндовс вс макос,срачи о виме и ide.
@ulysses.apokin
@ulysses.apokin 3 ай бұрын
"Все держится на циклах" Haskell: 😮😮
@redofficiale
@redofficiale 3 ай бұрын
Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 Haskell: 😮😮 ...
@DrezdenHC
@DrezdenHC Ай бұрын
Топ 10 комерческих програм на хаскеле.
@michaelinuente92
@michaelinuente92 3 ай бұрын
ответ прост, как джун после курсов: для лучшей читабельности. синьоры, под кофиё, не готовы ломать глаза от всяких "гоуту".
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
Вообще-то ещё для лучшей исправляемости. И рисуемости в виде блок-схемы без пересечений. Хотя некоторые алгоритмы с использованием гоуту проще и понятнее, чем без.
@michaelinuente92
@michaelinuente92 2 ай бұрын
@@user-bi4eo3ys1f какой ещё "рисуемости"? :) тогда уже "диаграммности" :) и "читабельность" предполагает "исправляемость" :)
@michaelinuente92
@michaelinuente92 2 ай бұрын
@@user-bi4eo3ys1f к слову о "диаграммости", во времена Рюрика действительно писали мега методы, кои монахи изображали в виде диаграмм. но после изобретения Калашникова за попытку написания сходных трактатов программист получает с вертушки в ухо. больше двух "if" - расстрел. поэтому диаграмм на методы не рисуют :)
@merovingen4546
@merovingen4546 3 ай бұрын
во что бы там код не разворачивался и не компилился, сахар на то и сахар, что бы мне как разработчику одни и те же вещи было проще писать, а уже если мне нужно упороться то я напишу той конструкцией, которая подойдёт лучше
@chakchaky8521
@chakchaky8521 3 ай бұрын
Ты просто не понял сути - автор говорит что языку достаточно одного for для всего. А while это пережитки древней цивилизации. Сегодня этот цикл while ни к чему вообще. Его бы по хорошему выкорчевать из будущих версий языков...тут я даже соглашусь
@user-bk7no6gn8n
@user-bk7no6gn8n 2 ай бұрын
​@@chakchaky8521машина использует goto. Цикл for/while вам даёт транслятор в псевдокод после дизассемблирования, чтобы читать было удобнее.
@iii8176
@iii8176 3 ай бұрын
10 лет писал на двоичном коде, впервые узнал о циклах!! топ контент.
@EvgeniyFadeev
@EvgeniyFadeev 3 ай бұрын
А не врёшь? ;)
@rebrov_vyacheslav
@rebrov_vyacheslav 3 ай бұрын
@@EvgeniyFadeev врет )
@fordin3726
@fordin3726 3 ай бұрын
Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Вообще красавчик!
@MrReadManiac
@MrReadManiac 3 ай бұрын
Можно вот этого вот почаще?
@dandyhorsse
@dandyhorsse 3 ай бұрын
Давайте, пока!
@anon_commentator
@anon_commentator 3 ай бұрын
Как же хорошо, что его видосы набирают всё меньше просмотров. А то я уже задолбался во всех уголках интернета находить эту фразу.
@falser20
@falser20 3 ай бұрын
Круто, теперь можно снять про переменные, ссылки и обязательно покуракерать, что в моем любимом петухончике нет констант
@TheTheMrkpyt
@TheTheMrkpyt 3 ай бұрын
Возникает философский вопрос, а есть ли в C# константы, если в нём так развито мето программирование и рефлексия
@ankagris4689
@ankagris4689 3 ай бұрын
Так есть видос про переменные
@falser20
@falser20 3 ай бұрын
@@ankagris4689 там нет заглядывания внутрь до уровня регистров в ассемблере или работы с указателями как в C. А ведь это база
@user-cr8rp6xj2l
@user-cr8rp6xj2l 3 ай бұрын
Можно сделать свой класс или стандартно через pip install
@qwertymangames1800
@qwertymangames1800 2 ай бұрын
В петухончике нет классического цикла for, так как он работает по логике foreach ВСЕГДА. И соответственно бесконечного цикла на нём не сделать тоже.
@AIFT_Staff
@AIFT_Staff 3 ай бұрын
о, спустя 6 часов после выхода видео переименовал его, до этого оно называлось "Кривая основа всех языков программирования"
@hollow.one.w
@hollow.one.w 3 ай бұрын
Ну надо кликбейтить, это же ютуб
@ankagris4689
@ankagris4689 3 ай бұрын
Этого никогда не было. Видео всегда называлось так
@hollow.one.w
@hollow.one.w 3 ай бұрын
@@ankagris4689 ну и как теперь верить людям...
@raztarg4adchadov914
@raztarg4adchadov914 3 ай бұрын
Бро. Красавчик, ещё побольше такого контента. Благодарю за информацию!!!
@user-xk2lb2ob8p
@user-xk2lb2ob8p 3 ай бұрын
Сишный for был создан для компьютера с 8 килобайтами памяти. Это PDP-7 и UNIX. Памяти у Юникса было как обрывок чека в туалете, поэтому у for в языке C такой странный синтаксис.
@alexf3289
@alexf3289 3 ай бұрын
Что в нём странного? О_о
@user-gs5ku1et3n
@user-gs5ku1et3n 3 ай бұрын
Человек фигню написал, в C for самый нормальный, там явно указана инициализация переменной, изменение и проверка перехода.
@SilentPrayerCG
@SilentPrayerCG 3 ай бұрын
Вот почему в спектумовском бейские тоже фор есть.. там-же тоже памяти ровно на стикер на котором размер трусов печатают.
@ulysses.apokin
@ulysses.apokin 3 ай бұрын
@@user-gs5ku1et3n в чистом Си в for нельзя инициализировать переменную. Напоминаю, что присвоение и инициализация - это две абсолютно разные операции.
@user-xk2lb2ob8p
@user-xk2lb2ob8p 3 ай бұрын
@@SilentPrayerCG В Спектруме памяти на порядок больше чем у UNIX. Одно ПЗУ Синклера в два раза больше чем вся оперативная память Юникса. Достаточно чтобы использовать человеческий оператор FOR, а не эту кастрированную замухрышку. Ну и как итог, сколько Синклеров продали? А на скольких компах Юникс поставили за то же время? 30 (тридцать штук).
@dolsha
@dolsha 3 ай бұрын
Братан, хорош! Давай вперёд! Контент в кайф! Можно ещё? Ваще красавчик!
@sweetcapitan5690
@sweetcapitan5690 3 ай бұрын
А что насчет того, что в шарпах for и forEach имеют разную производительность? Про фп, в которых циклов нету by design, можно было бы хотя бы упомянуть. Про ииераторы тоже неэи слова не сказанно.
@fahrenheit1863
@fahrenheit1863 3 ай бұрын
Я вообще не программист, случайно увидел видос. Но разве под капотом у map, reduce и filter не цикл или goto - jmp? Еще вроде как можно зациклить код рекурсией, или это другое? А разве под капотом операторов for и while не используется тот самый goto - jmp?
@progressive_agriculture
@progressive_agriculture 3 ай бұрын
Циклы - надстройка над ассемблером, или машинными кодами. Логика циклов языков высокого уровня в том, что у него фиксированный вход в начале и фиксированный выход в конце. Прервать breake можно, но все равно попадаешь в конец цикла. А эмуляция цикла через goto позволяет с любого места отправиться в любое, причем, хоть из середины одного "цикла" в середину другого "цикла". Использование for и while и отказ от goto позволяет избежать таких косяков. Чтоб не плодить ошибки.
@Senteggo
@Senteggo 3 ай бұрын
понятное дело, что циклы под капотом у map, reduce и тд, и вероятно goto под капотом у циклов, к чему ты это написал? А про рекурсию - странно, что автор видео про нее не вспомнил
@shatalinator
@shatalinator 3 ай бұрын
Если в рекурсивной функции нет условия её прерывания, она будет выполняться бесконечно долго. Под "бесконечно долго" подразумевается "пока не переполнится стек вызова".
@dmitrii-329d
@dmitrii-329d 3 ай бұрын
В том же лиспе нет циклов, но есть хвостовая рекурсия, если мне не изменяет память
@user-ry5oh3qt2u
@user-ry5oh3qt2u 3 ай бұрын
Рекурсия-зло, пару тысяч раз рекурсия сработает и бам: стекоферфлоу
@progressive_agriculture
@progressive_agriculture 3 ай бұрын
При тех тормозах, какие создают современные языки программирования, придираться к скорости разнообразных циклов нет смысла. А синтаксический сахар для того и нужен, чтоб легче писать было. Оно логичней. Хотя можно любой перебор через любой реализовать.
@user-xj9hn3fg8n
@user-xj9hn3fg8n 3 ай бұрын
В чем проблема современных ЯП? Если в python/js всё объект - это не проблема языка. А проблема того кто использует голый for для многомерных массивов в том же python
@progressive_agriculture
@progressive_agriculture 3 ай бұрын
@@user-xj9hn3fg8n а Вы с какой целью его применить собираетесь? Каждый инструмент хорош для своего дела. И Python без библиотек написанных на с/с++ ни чем ни лучше старого basic. А реализовать на с++ любые списки и коллекции - ни каких проблем.
@user-iw1ty8sk1v
@user-iw1ty8sk1v 3 ай бұрын
@@user-xj9hn3fg8n > Если в python/js всё объект - это не проблема языка Угу, проблема лишь в том что это проблема рантайма этого языка.
@WounderVaflel
@WounderVaflel 3 ай бұрын
Ничего себе, это что, образовательный контент?!!
@Titancikk
@Titancikk 3 ай бұрын
Братан харош контент в кайф давай еще😊
@uselessevgeny3726
@uselessevgeny3726 3 ай бұрын
Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
@zmirk
@zmirk 3 ай бұрын
Да я с помощью GOTO 23 года назад первую игру написал на бэйсике... ээх, были времена.
@SilentPrayerCG
@SilentPrayerCG 3 ай бұрын
Еще go sub был, но он уже забыт... (наверное, я хз на самом деле)
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
@@SilentPrayerCG Ну, это вызов подпрограмм в бейсике. Как в PL/1 CALL , или в фортране. Люди тогда ещё не догадывались, что вызывать подпрограммы можно просто по их имени, а не специальным оператором.
@SilentPrayerCG
@SilentPrayerCG 2 ай бұрын
@@user-bi4eo3ys1f я знаю что это, я к тому что, не уверен остался ли этот рудемент в каких-то современных языках или нет. В vb его уже нет.
@tohoto2183
@tohoto2183 3 ай бұрын
Честно говоря так и не понял ,что хотели сказать ExtremeCode . Они имели ввиду циклы вообще или только определенного языка?
@MrCter
@MrCter 3 ай бұрын
не стоит искать смысл там, где его нет ) главное - реклама есть
@OlegTar
@OlegTar 3 ай бұрын
циклы вообще
@paztwel
@paztwel 2 ай бұрын
Речь идёт про циклы при работе с массивами. Вообще это бред высосанный из пальца.
@rar24
@rar24 3 ай бұрын
когда видос про энвелоуп
@Kolawwwork
@Kolawwwork 3 ай бұрын
Комент в топ!!
@user-ig5qe8sy9b
@user-ig5qe8sy9b 3 ай бұрын
Давно интересует эта тема, но в интернете никак не могу найти толкового гайда
@RusSaboteur
@RusSaboteur 3 ай бұрын
Рекурсия где?! Где рекурсия я спрашиваю?! Функциональное программирование для кого изобрели, м? Все циклы можно реализовать рекурсией. Все циклы - синтаксичечкий сахар. Change my mind
@daiske2867
@daiske2867 3 ай бұрын
там где рекурсия бесплатная да, но не все языки haskell и пролог
@RusSaboteur
@RusSaboteur 3 ай бұрын
@@daiske2867 scala?
@user-xj9hn3fg8n
@user-xj9hn3fg8n 3 ай бұрын
Все циклы можно реализовать переставляя поинтер на стеке, come on
@arhitutorials
@arhitutorials 3 ай бұрын
Респект братан! Рекурсию то забыли бородатые синьоры)
@Senteggo
@Senteggo 3 ай бұрын
Все функции в целом - синтаксический сахар. Change my mind
@Dmittry
@Dmittry 3 ай бұрын
А можно подробнее, как do-while заменить for или while'ом? Без костылей с новой переменной isFirstRun.
@komillermaster6821
@komillermaster6821 3 ай бұрын
В питоне, for в привычном понимание не существует, он перебирает итерируемые объекты)
@SklerozRu
@SklerozRu 3 ай бұрын
for each по сути
@aywanbr
@aywanbr 3 ай бұрын
В golang только for, в котором прячется for и while. В erlang только рекурсия, тема которой требует отдельного видоса. Так что нужно больше контента
@Rezedent12
@Rezedent12 3 ай бұрын
А ещё range для перебора коллекций.
@devilman_01
@devilman_01 3 ай бұрын
Великолепный видос Не смотря на то, что я болею, а сегодняшний рабочий день был особенно сильно нагружен, все равно смотрел(слушал взахлеб)
@-Sergey
@-Sergey 3 ай бұрын
Ребята, которые "Братан, хорош, давай, давай, вперёд! Контент в кайф". Ну включите же голову, напишите что-нибудь от себя. Ну тоска же под каждым видео одинаковые комментарии читать.
@letburnit5017
@letburnit5017 3 ай бұрын
Ребята, которые "Братан, хорош, давай, давай, вперёд! Контент в кайф". Ну включите же голову, напишите что-нибудь от себя. Ну тоска же под каждым видео одинаковые комментарии читать.
@glek3197
@glek3197 3 ай бұрын
Ребята, которые "Братан, хорош, давай, давай, вперёд! Контент в кайф". Ну включите же голову, напишите что-нибудь от себя. Ну тоска же под каждым видео одинаковые комментарии читать.
@Dyxacm
@Dyxacm 3 ай бұрын
Ребята, которые "Братан, хорош, давай, давай, вперёд! Контент в кайф". Ну включите же голову, напишите что-нибудь от себя. Ну тоска же под каждым видео одинаковые комментарии читать.
@user-cc9tb3dg8v
@user-cc9tb3dg8v 2 ай бұрын
Ребята, которые "Братан, хорош, давай, давай, вперёд! Контент в кайф". Ну включите же голову, напишите что-нибудь от себя. Ну тоска же под каждым видео одинаковые комментарии читать.
@user-ek9nj9dl1u
@user-ek9nj9dl1u 3 ай бұрын
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
@dimankan
@dimankan 3 ай бұрын
Фига себе. Я начал изучать си шарп 3 года назад по плейлистам для маленьких и тупых, думал что много уже чего увидел и прочитал, "repeat:" и "goto repeat", я ещё не видел. думаю надо как-нибудь использовать и взорвать кому-нибудь жёпку:)
@evgeniygorkaviy4690
@evgeniygorkaviy4690 3 ай бұрын
Главное себе не взорвать такой миной.
@user-cc9tb3dg8v
@user-cc9tb3dg8v 2 ай бұрын
Ну, если там, где ты работаешь, нормально поставлены процессы, то твой код обосрут на код ревью и просто просто отклонят пока не перепишешь. И скорее всего будут правы: самое удобное что можно на них сделать - быстрый выход из многоуровнегого цикла. Либо свою упоротую версию try-catch. Все остальное прекрасно заемняется условиями, циклами либо вынесением в отдельную функцию. А компилятор еще и оптимизаций докинет сверху.
@ankagris4689
@ankagris4689 3 ай бұрын
Как всегда гениально!!!
@boomboxx427
@boomboxx427 3 ай бұрын
Брат, харош, невероятно приятно тебя смотреть, как и на мужиков в видосе, спасибо!
@EvgenOl
@EvgenOl 3 ай бұрын
Ну коли три вида цикла не нужны, и ты предлагаешь оставить только 1, то пошли дальше. Давай уберём все! Ведь их легко заменяет goto. А потом и его отменим и пересядем все на ассемблер :)
@mokaakasia4636
@mokaakasia4636 3 ай бұрын
Базу выдал. Предлагаю еще отметить конструкции try catch , if , вызов функций , так как они тоже по факту оболочка для goto. Ну ладно , нужны еще условные переходы типа jnz, но это не важно.
@vovka_goodwin
@vovka_goodwin 3 ай бұрын
В го вообще один цикл на все случаи жизни :D
@vovka_goodwin
@vovka_goodwin 3 ай бұрын
@@dsgnfun751 for
@glenstorm87
@glenstorm87 3 ай бұрын
Расскажите пожалуйста про циклы в Хаскеле 👉👈😊
@surdeus
@surdeus 3 ай бұрын
Готово
@user-ef7om8pq6t
@user-ef7om8pq6t 3 ай бұрын
Согласен со всем, кроме того, что сахар - плохо (в меня полетят камни, и да, я питонист). Ну в чем проблема двух вариаций вайла? Заботой о "новичках" можно пренебречь, к этому привыкнуть за 2-3 issue можно. Но это же очень круто, что можешь писать так, как хочешь (и вот не надо говорить, что питон кринж, у меня на js 6 микросервисов написано, на плюсах год работал, работаю хардкорно под unix'ом, а вторая работа - анализ yocto и biuldroot, так что я разного наелся за профессиональную жизнь))) Но вот в чем проблема сахара? Ну окей, новичку не понятны правила игры - учись и станут понятны. Но программисту, который не хочет драться с ЯП за организацию каких-то базовых приколов... Ну вот хочу писать фор, пишу, хочу писать вайл, пишу, хочу работать с множествами, фроузен множествами, словарями, списками, массивами, деревьями - я с помощью сахара это делаю по щелчку пальцев, как и множественные перегрузки и обилия самоподобных синтаксических конструкций. Просто как будто тема ради темы))) С логикой отказа от сахара или его сокращением можно опять перейти на ассемблер 😐
@user-uz4ry4zf3d
@user-uz4ry4zf3d 3 ай бұрын
Чет мне кажется там про сахар так плохо не говорили.
@user-ef7om8pq6t
@user-ef7om8pq6t 3 ай бұрын
@@user-uz4ry4zf3d ну как бы да, но я считал посыл из серии, что надо уходить от самоподобных конструкций и тд. Я немного обобщил пример 🙂
@user-uz4ry4zf3d
@user-uz4ry4zf3d 3 ай бұрын
@@user-ef7om8pq6tЭдак мы массивы на словари заменим ))
@user-qp5mu5tc8n
@user-qp5mu5tc8n 3 ай бұрын
Раз уж вы питонист, можно вам задать вопрос, какого xepa у вас в языке list это не список, а динамический массив? Я просто ранее изучал С и С++ с ассемблером и когда недавно увидел list[2] на питоне удивился, что там оператор индексирования для списка используется. Начал гуглить и обнаружил, что в питоне это не список...
@user-ef7om8pq6t
@user-ef7om8pq6t 3 ай бұрын
@@user-qp5mu5tc8n я бы не был так уверен, что это чистый динамический массив. Я интересовался этим вопросом минут 20 полгода назад и у меня сложилось впечатление (возможно я хотел, чтобы оно у меня такое сложилось 🙂), что там развернутый список на базе массивов, то есть элементом списка является массив грубо говоря, и эти массивы связаны в список, в котором и адресация индексная работает и в целом меньше приколов с аллокацией памяти, потому что для расширения достаточно просто слтнковать ещё один массив в конец, но супер не уверен, в этом, я не смог найти нормальную литературу по этому поводу. Буду рад, если поделитесь материалом, на базе какой структуры реализован list в python
@user-tq2we2fp9t
@user-tq2we2fp9t 3 ай бұрын
Братан хорош, топ контент, ДАВАЙ ЕЩЕ!!!!!
@kalmanjudin1336
@kalmanjudin1336 3 ай бұрын
Чел вставил рекламу и прочитал определения циклов😢. Класс!😮 А можно потом про базовые принципы ооп?😊 Спасибо!❤❤❤
@mn4840
@mn4840 3 ай бұрын
...и приправил всё это отборными мемчиками )
@DrMefesto
@DrMefesto 3 ай бұрын
Познавательно)) даешь еще таких основ)
@VitaliyShevtsov
@VitaliyShevtsov 3 ай бұрын
Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Вообще красавчик!😅
@dar1kje812
@dar1kje812 3 ай бұрын
братан, хорош, давай, давай вперед, контент в кайф, можно еще, вообще в кайф!
@Torn_Shoe
@Torn_Shoe 3 ай бұрын
for нужно потому-что не всегда он должен начинаться с 0, может нам нужно выбрать что-то начиная с 1 элемента, а не с 0, поэтому не всегда его можно превратить просто в while (i < 5) как в примере
@two_choices
@two_choices 3 ай бұрын
Ничего тебе не мешает сделать for(int i =1 ...) и цикл начнется с единицы
@Torn_Shoe
@Torn_Shoe 3 ай бұрын
@@two_choices так я ж поэтому и говорю что нельзя все заменить на while как делает компилятор потому-что каждый цикл служит своей цели.
@Dmittry
@Dmittry 3 ай бұрын
@@Torn_Shoe Так тебе без разницы с чего он там начинается. Цикл for просто объединяет инициализацию, условие и изменение. Ты можешь сделать так: int i = 1; while (i < 5) { делаем_какую_то_хрень; или_не_делаем; i = i +100500; }. И это будет тоже самое, что for (int i = 1; i < 5; i = i + 100500) {} Да, там не обязательно i++ должно быть. У меня другой вопрос, как заменить do-while без костылей с дополнительной переменной isFirstRun?
@OlegTar
@OlegTar 3 ай бұрын
``У меня другой вопрос, как заменить do-while без костылей с дополнительной переменной isFirstRun?`` а в чём проблемам собственно?
@Dmittry
@Dmittry 3 ай бұрын
@@OlegTar А в чём проблема с do-while собственно? В ролике рассказывается, что три вида циклов нафиг не нужны и можно всё заменить одним. Вот у меня и вопрос, как заменить do-while без нагромождения костылей.
@sleepyNovember_project
@sleepyNovember_project 3 ай бұрын
6:34 оно у тебя в документе исходника никуда не разворачивается, так что, да, докапываешься. Если так хочешь использовать один цикл для всего, используй
@glek3197
@glek3197 3 ай бұрын
Братан хорош давай вперед контент в кайф
@vasilevsky_a
@vasilevsky_a 3 ай бұрын
5:57 Автор обкакунькался, вот тебе фор свифтовский, просто синтансис другой for i in 0..
@vasilevsky_a
@vasilevsky_a 3 ай бұрын
(Да, я знаю что по сути идет проход по Range: Sequence интов, и это ближе к проходу по массиву чем к счетчику по семантике, но факт в том что конструкция есть и очень часто используется) просто разработчики языка не стали разделять фор на два типа, как forin и forof в джсе
@sleepyNovember_project
@sleepyNovember_project 3 ай бұрын
Раньше в си плюсах можно было похоже писать, не знаю как с таким сейчас: for each (obj i in coll){} Сейчас актуален и работет такой синтаксис, например для перебора всей коллекции for (auto i : coll){} Так, к слову
@OlegTar
@OlegTar 3 ай бұрын
только в сишном форе, я всё что угодно могу запихать в фор, хоть вызов функции: for (func1();func2(); func3())
@vitalybattalov1897
@vitalybattalov1897 3 ай бұрын
Так насытился что аж захотелось пару кружочков пробежать и всё осмыслить. Спасибо ❤
@AlexShataev
@AlexShataev 3 ай бұрын
Минуточку! ✋Вы спецификацию циклов читали вообще или нет?
@Youtube-pomoyka
@Youtube-pomoyka 3 ай бұрын
В PHP также синтаксический сахар позволяет сократить 2-3 строки до одной. For так же, там удобней работать и отслеживать итерации
@aleksandrKR
@aleksandrKR 3 ай бұрын
Прикольно. Пожалуй с этого видоса немногг начну погруженние в прграммирование. Не собираюсь становится прогером, каким либо, но для простой автоматизации какой то повседневки хорошо бы знать и понимать.
@PersonalSmile69
@PersonalSmile69 3 ай бұрын
я так понимаю курс по пограммированию от ЭкстримПанков уже начался, верно?
@user-io8ug3yb2p
@user-io8ug3yb2p 3 ай бұрын
В прологе вообще нет никаких циклов, там работает машина поиска с возвратом, довольно мощная штука
@chakchaky8521
@chakchaky8521 3 ай бұрын
Безсмысленная дичь.
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
И очень медленная. Помнится, в начале 90-ых была игра "преферанс", написанная на прологе. Так иногда приходилось по 20 минут ждать очередного хода.
@user-xs4ws1zp1e
@user-xs4ws1zp1e 3 ай бұрын
Так, блэть, Я не понял. А куда потерялся НаЩ ЛюБиМеВщЫй "foreach" под обложкой "for"?!?!?!
@ispite
@ispite 3 ай бұрын
он же пометил forin (foreach)
@user-rs7gv4fy7e
@user-rs7gv4fy7e 3 ай бұрын
У пхпшников инфаркт жопы) Наш любимый забыли)
@SilentPrayerCG
@SilentPrayerCG 3 ай бұрын
Он превратился в какой-то for in.
@KZVlad1
@KZVlad1 3 ай бұрын
@@user-rs7gv4fy7e почему именно пхп? он не только там
@mr.e.a.8967
@mr.e.a.8967 3 ай бұрын
А еще for of забыли, атата😢
@scad_
@scad_ Ай бұрын
По поводу goto описано в "Чистая архитектура" Роберта Мартина. Не новость. Но я не могу сказать, что цикл while и for взаимозаменяемы. Автор же сам говорит, что в while не известно количество итерации, а в for известно. В этом и разница концептуального подхода. На том же python можно сделать просто while True и цикл будет крутится бесконечно
@2009Spread
@2009Spread 3 ай бұрын
самое зачетное из видоса - это место рекламы :)
@TheLevius
@TheLevius 3 ай бұрын
а как какать?
@lolkek.supergut
@lolkek.supergut 3 ай бұрын
А как правильно - одновременно или одновременно?
@user-ws3ql9gw7g
@user-ws3ql9gw7g 3 ай бұрын
одновременно
@user-ik4ch7wl3l
@user-ik4ch7wl3l 3 ай бұрын
у программистов правильно будет - паралелльно
@alexw6751
@alexw6751 3 ай бұрын
Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Можно вот этого вот почаще?
@Ais_Hunt
@Ais_Hunt 3 ай бұрын
Люблю Я эти видосы от экстрим код, холивар ради холивара ))) Для больших и сложных коллекций методы расширения LINQ, для всего остального for и while, ну и do while для одаренных умом))) 🤡🤡🤡 Нужно мне как-то было обработать большой и длинный запрос для апи, который растягивался в несколько промежуточных, так вот там был единственный раз, когда мне пришлось заюзать do while. З.ы. Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Вообще красавчик!
@Dmittry
@Dmittry 3 ай бұрын
От того, что что-то используется редко, оно не становится "для одарённых умом".
@user-iw1ty8sk1v
@user-iw1ty8sk1v 3 ай бұрын
Линк всегда был отличным способом положить золотой зион в сотку по всем ядрам. Эт да. Вопрос вообще целесообразности присирать в язык программирования общего назначения семантику реляционных СУБД в приниципе бесполезно обсуждать. Мое мнение - это еще хуже уровень гейства чем текущий из всех щелей ORM.
@nnnvrmnd
@nnnvrmnd 3 ай бұрын
Братан, хорош! Давай давай вперед! Контент кайф, можно ещё? Вообще красавчик. Можно вот этого вот почаще? Давайте, пока!
@WewasAtamans
@WewasAtamans 5 күн бұрын
forEach и вправду же тормознутее на хроме, или наконец пофиксили??
@user-wh1tt7cd1b
@user-wh1tt7cd1b 3 ай бұрын
До этого видео использовал в коде только мотоциклы. Спасибо вам!
@MIT-js9we
@MIT-js9we Күн бұрын
«Как фортран программист без внуков» Я тоже слышал о девушках в легендах, говорят, они и вправду существуют.
@_curtman
@_curtman 3 ай бұрын
Я не понял, а о чём видос то?
@paztwel
@paztwel 2 ай бұрын
Типа не используйте циклы для работы с массивами. Или хз, автор чушь какую-то несёт ради рекламной интеграции
@igicava
@igicava 3 ай бұрын
В go это лучше всего сделано. Там только for есть который все задачи выполняет.
@user-cl8dg5fj1c
@user-cl8dg5fj1c 3 ай бұрын
Так у циклов всего одна задача и есть
@igicava
@igicava 3 ай бұрын
@@user-cl8dg5fj1c Да, у циклов только 1 задача - повторять какой-то участок кода. Но оформлять это можно по разному и по-моему в go оформлять циклы удобнее всего.
@user-bb9go8bi9e
@user-bb9go8bi9e 3 ай бұрын
Жаль автор не в курсе но на уровне железа цикл FOR реализуется командой LOOP, а While и прочее реализуется методом JMP (это аналог GOTO на ассемблере), тут я говорю про архитектуру х86, цикл FOR везде тащат из-за того что у него есть своя аппаратная реализация.
@user-zx1ct5eg2w
@user-zx1ct5eg2w 3 ай бұрын
Ты ещё забыл про отдельное чудо языка Rust: цикл loop. Это короче замена while true, чтобы избежать проверки истинность этого самого true, сделали цикл вообще без проверки, тупо бесконечный. И кстати разворачивается он в ассемблере именно в безусловные переходы.
@Mercury13kiev
@Mercury13kiev 3 ай бұрын
Циклы while, do/while и do/until (идеал - все три) - это три кита, связанных… с человеческим языком. Надо прикинуть устройство алгоритма на родном языке, а потом переписать на компьютерный. Когда do/until превращается в do/while по законам де Моргана, код может терять читаемость. Цикл for - это т.н. цикл со счётчиком. Да, это while, но он подразумевает пару новинок. 1) Завести при желании переменную-счётчик, которая будет жить в теле цикла и не уйдёт за его пределы. 2) Функция «+1» находится за пределами тела, чтобы можно было пользоваться оператором continue. Этот оператор в Си крайне мощен, но и ошибкоопасен. Цикл foreach - это тот же цикл for, покрывающий важный случай. 1) Коллекция сама знает, как её проходить. 2) Коллекцию нужно пройти целиком (возможно, выскочив из цикла где-то по дороге). 3) Сам счётчик не нужен, нужен только элемент. Когда случаи 2 и 3 не выполняются, кое-где сделали настоящую инверсию абстракции - foreach по диапазону. Использовать goto приходится, надо признаться. Правила хорошего тона - недалеко и вперёд, обычно для выхода из нескольких циклов.
@1234567qwerification
@1234567qwerification 3 ай бұрын
А язык Perl написал лингвист, поэтому он ещё ближе к человеческому. И для выхода из вложенного цикла к break добавляется имя метки, которой помечен тот цикл, из которого выходить :)
@Mercury13kiev
@Mercury13kiev 2 ай бұрын
@@1234567qwerification Выход из цикла по метке - это классное дело! Жаль, такого нет в Си с крестами.
@1234567qwerification
@1234567qwerification 2 ай бұрын
@@Mercury13kiev может, добавят ещё :) (Туда уже такого надобавляли...)
@gitarre_spielen
@gitarre_spielen 3 ай бұрын
Про второй итог: изпользуя map, filter и т.п., опираемся на самописные функции через def F(...) или функции сторонних библиотек.
@ve1c0m
@ve1c0m 3 ай бұрын
чо как на счёт while для доставания из очереди команд и их выполнение пока очередь.length > 0
@vp_arth
@vp_arth 3 ай бұрын
Так for(;очередь.length;) {} - то же самое
@OlegTar
@OlegTar 3 ай бұрын
while (queue.length > 0) { var command = queue.getCommand(); } for (;queue.length > 0;) { var command = queue.getCommand(); }
@ve1c0m
@ve1c0m 3 ай бұрын
@@vp_arth 2 точки с запятой выглядят не так красиво как while(очередь.length > 0), ещё и думать надо почему так написал прогаммист, а под капотом всё равно в while превращается
@sky1nax
@sky1nax 3 ай бұрын
в расте из за особенностей удаления переменных чаще используется loop { ..break}
@mrilinski
@mrilinski 3 ай бұрын
4:43 А как реализовать while через for?
@igormenkaur8659
@igormenkaur8659 3 ай бұрын
Последний в выборке "сначала новые"
@coralblitz69
@coralblitz69 3 ай бұрын
Охуенно
@YS-sw1xu
@YS-sw1xu 3 ай бұрын
А можно пузырьковую сортировку запилить на while? 🤔
@OlegTar
@OlegTar 3 ай бұрын
можно. while и for - по сути одно и то же. Я могу в for не инициализировать переменные и не инкрементить, т.е. оставить 1 и 3 заголовки пустыми. i = 0; for (; i
@Zaborovnik
@Zaborovnik 3 ай бұрын
Истина в любимом нами машинном языке, процессор имеет только функции перехода, которые могут быть либо безусловные, либо зависящие от статуса флажков последней операции, взаимодействующей с флагами. С их помощью реализуются как циклы, так и ветвления. Если мы говорим о первых, циклы можно реализовать как раз таки тремя способами, причем третий является разновидностью двух последних. 1) DO - пишется метка, потом исполняется «тело цикла», в котором существует команда, изменяющая состояние флажков, потом идёт команда перехода, зависящая от состояния последних (например, флаг нуля - результат функции вернул слово из нулей), выполнение условия заставит программу выполняться с метки, пока условие не будет нарушено, что позволит машине перейти на следующую строчку кода 2) WHILE - создается начальная метка, далее - команда условного перехода, ведущая на метку за телом цикла. Если условие не выполняется, машина будет выполнять следующий за командой перехода код, пока не дойдёт до метки безусловного перехода к начальной метке. 3) FOR - предварительно до первых двух блоков выделяется переменная, которой присваивается значение требуемого количества циклов, далее в теле цикла в конце мы пишем команду вычитания с изменением флажков, именно результат этой команды будет определять, как себя переведёт команда условного перехода. - Приблизительно так, если есть неточности, прошу в комментарии.
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
Вообще-то в машинном языке ещё есть вызовы подпрограмм и возвраты из них. А также вычисляемые косвенные переходы и косвенные вызовы подпрограмм. То есть возможен оператор case, не содержащий проверки условий, а одной командой переходящий на вариант исполнения ветки.
@KZVlad1
@KZVlad1 3 ай бұрын
А куда делся втроой голос? Уже давно его нет, но всё никак не спрашивает никто
@Golyb_q
@Golyb_q 3 ай бұрын
Что-то я не догнал с чего это "do-while" не нужон. Если замену while на for я еще могу как-то оправдать, мол это ``` for( ; /*условние*/ ; ) { // тело } ``` и это ``` while(/*условние*/) { // тело } ``` по сути одно и то же, то do-while будет просто не удобно реализовывать через for. Например такой код ``` do{ // попросить юзера ввести "5" }while(/*проверить ввел ли он 5*/) ``` Это можно сделать и через for конечно, но тогда так или иначе мы сделаем проверку условия перед тем как сделать первую итерацию цикла. Так же не очень понял как и зачем заменять for на while, ибо в таком случаи ``` int i = 0; while(i < 10) { // тело i++; } ``` переменная i будет доступна и вне цикла, при этом ее инициализацию в цикл не запихать - условие не пройдет
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
А если всю эту конструкцию засунуть в ещё одни фигурные скобки?
@Golyb_q
@Golyb_q 2 ай бұрын
@@user-bi4eo3ys1f это сработает, область видимости ограничится) однако по мойму легче все же будет юзать for когда нужен for, а do-while когда нужен do-while)
@sergeyshevelev4842
@sergeyshevelev4842 2 ай бұрын
Мое мнение while использовать рискованно. Объибешься с условием получишь лупу (ровно такая же опа с until). For, forin более конкретные и отказоустойчивые. Кстати почему-то обошли строной foreach.
@alekseysverbeev2934
@alekseysverbeev2934 3 ай бұрын
while легко заменяет фор, но наоборот не всегда всё так просто, некоторые конструкции придется городить через вечный цикл с выходом по условию
@sleepyNovember_project
@sleepyNovember_project 3 ай бұрын
while(true){ if(chtoto) { break; } ... } Мощь 🤝
@OlegTar
@OlegTar 3 ай бұрын
наоборот тоже просто: while (true) => for (;true;) в 2м заголовке необязательно должно стоять ```переменная < что-то``` всё что угодно может стоять, хоть вызов функции: for (int i = 0; i < 8 || exit == true; i++) { } for (func1(); func2(); func3()) {
@alekseysverbeev2934
@alekseysverbeev2934 3 ай бұрын
​@@OlegTarэто именно то что я говорил про вечный цикл - нечитабельно и никакого смысла не имеет
@OlegTar
@OlegTar 3 ай бұрын
@@alekseysverbeev2934 имеет, просто выход из него, например, через break
@user-tr8xi3ik3c
@user-tr8xi3ik3c 17 күн бұрын
Golang использует во всех случаях только for
@grifon187
@grifon187 6 күн бұрын
-насколько идиотское видео вы хотите? -да
@ryazanov13
@ryazanov13 3 ай бұрын
А как же цикличность за счёт рекурсии? В функциональных языках на сколько я понимаю циклов нет вообще и как раз рекурсия и используется.
@user-hw7vo3xx9v
@user-hw7vo3xx9v 3 ай бұрын
Под капотом всеравно будет jmp,jne и прочее (точно уже не вспомню давно не писал на asm) так что принципиального отличия нет. Думал речь пойдет о рекурсиях, однако хрен не слаще редьки. Что бы сделать что то более производительное нужно смотреть в сторону архитектуры процессоров. А так это просто разговоры у кого длиннее.
@herman2lv
@herman2lv 3 ай бұрын
А куда скидывать деньги на лечение?
@user-gs5ku1et3n
@user-gs5ku1et3n 3 ай бұрын
Вообще есть три способа выполнить переход: 1. jmp 2. call/ret 3. Прерывания
@nouai
@nouai 3 ай бұрын
так и до r-value l-value дойти можно...
@parazitvenom2294
@parazitvenom2294 3 ай бұрын
Вот про то что сейчас нужно и что не нужно давно уже надо было показать!!!А то нам самаучкам вообще тяжко повторяем как попугайчики и впихиваем это все толком не понимая как и что лучше пременить. Сам месяц мучался что бы релизовать момент в итоге оказалось что нужно просто использовать switch
@dmitriy4415
@dmitriy4415 3 ай бұрын
Ещё можно функции создавать. Реально удобная вещь, можно код переиспользовать!
@akaikangaroo
@akaikangaroo 2 ай бұрын
А ещё можно инкапсулировать функции и данные в одном объекте - вообще пушка будет!
@AlekSanAndreas
@AlekSanAndreas 3 ай бұрын
forEach не сможет быть полной заменой for in, так как в forEach как минимум нельзя запихать операторы управления потоком (break, continues)
@OlegTar
@OlegTar 3 ай бұрын
forEach - это синтаксический сахар над паттерном Итератор, это другая тема.
@Debuffometh
@Debuffometh 3 ай бұрын
Искала видео про месячные, а тут какой-то мужик втирает мне какую-то дичь про циклы 😮
@reteavstudio
@reteavstudio 3 ай бұрын
Зато как втирает
@user-bi4eo3ys1f
@user-bi4eo3ys1f 2 ай бұрын
А я пытался выяснить в интернете, сколько у кошки сисек. Оказалось, непросто сформировать правильный запрос.
@slaviksemen4919
@slaviksemen4919 2 ай бұрын
в js forEach работает так же и как for. map медленнее потому что конечно создается новый массив.
@user-tx8lw5ti9m
@user-tx8lw5ti9m 3 ай бұрын
На фронте использую только map, forEach, filter и reduce 🤩. reduce в JS, кстати, насколько я понял, реализован не правильно на уровне интерфейса. Вместо того, что бы складывать монады по заданной функции, он укладывает элементы в аккумулятор, что запрещает на уровне интерфейса параллелить этот процесс
@OlegTar
@OlegTar 3 ай бұрын
можно не укладывать в аккумулятор (т.е. мутировать его), а каждый раз создавать новую версию аккумулятора, тогда параллельность будет. НЕ так: arr.reduce((acc, cur) => {acc += cur; return acc}); // это мутирование а так: arr.reduce((acc, cur) => {return acc + cur}); // не меняем acc, а возвращаем каждый раз новый результат как acc + cur
@user-tx8lw5ti9m
@user-tx8lw5ti9m 3 ай бұрын
​@@OlegTar Это понятно, но тут важно что спецификация с аккумулятором запрещает параллелизм
@OlegTar
@OlegTar 3 ай бұрын
@@user-tx8lw5ti9m так в джс есть переменные, поэтому мы можем как и мутировать, так и нет. Другой вопрос, что для параллельности не надо мутировать. как reduce может нам запретить мутировать?
@user-iq8ns9jv9q
@user-iq8ns9jv9q 3 ай бұрын
в JS при итерации с помощью методов массива цикл нельзя остановить. Это самый большой их недостаток. Но в большинстве случаев останавливать и не надо, поэтому они очень удобны. К теме из видео еще подойдет .apply .call из JS. По сути методы делают одно и тоже, только аргументы по разному передаются, что как по мне очень глупо, а других отличий я не нашел.
@argonpraim8974
@argonpraim8974 3 ай бұрын
Прикол цикла while как ранее сказали ее потенциальная бесконечность выполнения до ошибки, а у for данный лимит по факту задан, есть 1 вариант его хакнуть, но очень высок шанс нарваться на ошибку.
@johntrucena4947
@johntrucena4947 3 ай бұрын
for можно тоже сделать бесконечным вообще сам for довольно гибкий цикл, с ним можно работать вообще как угодно единственное, он без костылей ду вайл не заменит
@Priboy313
@Priboy313 3 ай бұрын
О, не зря я на вайл и подобное забил. Как привык фор использовать по праву первого изученного, так и пользуюсь. Иногда только про мап вспоминаю. Думал один такой долдон, а тут оказывается теоритическая база под принебрежение присутствует.
@elborak795
@elborak795 3 ай бұрын
Поймал себя на мысли, что за последнии два года while вообще не использовал. Топ контент, красавчик!)
@user-fq5ec4xl4s
@user-fq5ec4xl4s 3 ай бұрын
Коты забрали всё внимание, пришлось пересматривать)
@user-lf1ez2ln7h
@user-lf1ez2ln7h 3 ай бұрын
мемолог видео - прекрасен
THE MOST FREQUENT MISCONCEPTIONS ABOUT OOP
19:37
ExtremeCode
Рет қаралды 535 М.
Ты должен писать плохой код
10:41
ExtremeCode
Рет қаралды 451 М.
Stupid man 👨😂
00:20
Nadir Show
Рет қаралды 28 МЛН
格斗裁判暴力执法!#fighting #shorts
00:15
武林之巅
Рет қаралды 43 МЛН
Buy Feastables, Win Unlimited Money
00:51
MrBeast 2
Рет қаралды 94 МЛН
Uma Ki Super Power To Dekho 😂
00:15
Uma Bai
Рет қаралды 52 МЛН
Удаленная работа - не делай ошибок!
13:03
Как я УСТАЛ работать программистом
7:29
Интерфейсы в Python
14:45
Денис Бречка
Рет қаралды 6 М.
Двойные стандарты АйТи
9:30
ExtremeCode
Рет қаралды 274 М.
Основные основы программирования
15:38
ПЛОХОЙ КОД - твой ЛУЧШИЙ друг
7:57
ExtremeCode
Рет қаралды 211 М.
Xiaomi Note 13 Pro по безумной цене в России
0:43
Простые Технологии
Рет қаралды 1,6 МЛН
Дени против умной колонки😁
0:40
Deni & Mani
Рет қаралды 1,3 МЛН
Why spend $10.000 on a flashlight when these are $200🗿
0:12
NIGHTOPERATOR
Рет қаралды 17 МЛН