Как стать автором
Обновить
3
0

Пользователь

Отправить сообщение
Я уже написал выше, что ошибся. Я помнил, что данный алгоритм может менять местами один и тот же элемент, но так как я ошибся, претензии к нему отменяются

Возможно я что-то путаю, но при перемешивании Фишера один и тот же элемент может быть перемещен несколько раз. А тут такого нет
UPD:
Забейте, я снова ступил. Почему-то помнил что это именно так, но перепроверил и это не так. В общем, можете не обращать на то, что я писал ранее

Решение, которое было применено мной на реально проекте то, которое идет до
Если это именно то, что вы искали, то применяем данный код для вашей ситуации. Однако, хоть он и генерирует случайную последовательность чисел (а именно это мне и было нужно), благодаря нему нельзя получить n-ную последовательность. Чтобы исправить ситуацию, мы немного дополним наш код:

После просто дополнение о пермутациях, чтоб не уткнуться в большое значение факториала, с ограничениеями, которые я описал. До этого нет циклов в цикле
Шафлить нужно было на клиенте. Мое решение, которое я применил линейное, квадратичное это дополнение, чтоб найти нужную пермутацию. Её мы не использовали, ибо не надо было. Про СУБД не знал, но буду знать
Я не говорю, что результат нестабильный. Разве что ошибся с алгоритмом, перечитал доки и да, там не алгоритм Фишера-Йетса, как я думал. Но в любом случае, писалось все тогда не на джаве, я щас потому что мне просто нравится алгоритмы на ней писать
Потому что нужно было все это делать на стороне клиента, seed должен был быть разным для одного пользователя для каждого теста, который он начинал (почти разный, если бы так совпало и рандомайзер сгенерил бы одинаковый, то ладно), ну и к тому-же тасование Фишера-Йетса не вариант. Вот такой вот был запрос ¯\_(ツ)_/¯
Это я щас на джаве все написал, а тогда вовсе не на ней писал. Да и хоть тут можно указать объект рандома, метод использует тасование Фишера-Йетса, а нам именно нужна была последовательность. То есть если какой-то элемент сел на одно место, там и должен сидеть
Как говорил великий:
Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует.

Вспоминается старая шутка: «Сделаем дешево, быстро, качественно. Выберите два пункта». Вы пытаетесь использовать инструмент не для целей, для которых он изначально был предназначен, а потом удивляетесь, почему что-то работает не так, как надо. Я понимаю, что подход «дешевле и быстрее» часто очень оправдан, но чтобы получить что-то, вы должны чем-то пожертвовать. Разве это проблема JS что кто-то решил применить его там, где этого делать не стоит ради простоты и дешевизны? Вы так в принципе и сайты клипать на C можете, генерируя HTML на вашем сервере, а потом отправляя клиенту, но зачем?
Я согласен, что название клик бейтное, но сразу бежать в комментарии и писать свое мнение не прочитав не особо то и длинную статью это уровень МДК
А ведь статья писалась не для того, чтобы доказать что он плох или хорош. И даже UPD секция в конце, где я прямым текстом написал для чего она была написана не помогла. Печально, но что уж тут поделать. Буду работать над собой и если в будущем напишу статью, то постараюсь донести смысл напрямую и в более понятном виде
А о чём тогда статья

Тут я пожалуй тяжело вздохну, пожму плечами и промолчу
Ну так тем более можно быть спокойным, ничего js не угрожает.

Я не переживаю за JS, мне все равно умрет он или нет. Он лишь инструмент, который я использую наряду с другими инструментами. Если мне однажды не понадобится его использовать, лично я от этого ничего не потеряю. Вы опять не понимаете, моя позиция не в том что JS лучший, а в том, что глупо хейтить что-то, потому что работает не так как вы ожидаете


Зато вы не сказали какую цель преследовал создатель js делая его именно таким.

Потому что это не тема статьи


Плохая аналогия подобна котёнку с дверцей. О том, что смартфон не подходит как подставка под горячее можно догадаться и до того, как поставить на него тарелку с супом. Догадаться о том, какая именно строка как выполнится до её выполнения решительно невозможно, поскольку я не телепат восьмидесятого уровня.

Это не плохая, а утрированная аналогия. Она идет после слов о том, что не инструмент создает ожидания о самом себе, а вы сами, опираясь на нечто другое — прошлые инструменты или чьи-то слова. Разве в этом есть вина инструмента? Максимум людей, которые обещали вам райское блаженство

Сколько нужно хейтеров, чтобы js прекратил своё существование? Тот же PHP хоронили, хоронили, а он популярнее и Ruby и Perl.

Его хоронили такие же хейтеры, а там, где его было просто использовать так и делали. Точно так же с JS


Более, менее как-то вы раскрыли лишь мысль о сравнении, приведя аналог на Java, хотя ни о динамической типизации, ни зачем нужны отдельные операторы == и === вы не упомянули.

Я сказал что JS с динамической типизацией и объяснил что === строгое сравнение, а == сравнение с преобразованием типов. Объяснять что это, как работает и зачем нужно я не стал, так как статья не об этом


В том то и дело, что внезапно. Раз уж в js это так происходит, то нужно хотя-бы объяснить, зачем это нужно и почему это сделано именно так, а не говорить, что предыдущее заклинание неверное, а верное нужно зазубрить. Если вы пишите только на js и пишите постоянно, то у вас будет время всё это запомнить. У тех, кто пишет время от времени возможности этого запомнить нет.

Ожидания формируются не на пустом месте, а благодаря во-первых опыту работы с другими языками и во-вторых благодаря рекламным статьям. В какой из этих частей виноват лично я?

Если что-то работает не так, как вы ожидали это ваша проблема, а не проблема инструмента. И не важно, откуда у вас эти ожидания, из-за прошлого опыта работы с другими инструментами, из-за людей, восхваляющих какой-то определенный инструмент или из-за чего-то ещё, это не проблема самого инструмента. Вы ведь не будете говорить, что ваш смартфон ужасен потому что он сломался когда вы забивали им гвозди? А ведь с молотком это работало, а ваш друг вам сказал, что он всегда забивает гвозди своим смартфоном

А возможно ли добиться такой стабильности интернет соединения, которые нужны всем этим облачным сервисам? Не столько в технологическом плане, сколько в плане бизнеса. В США например ужасная интернет-связь, но не потому что США это страна третьего мира, а потому что там монополия на интернет. Вы либо берете что есть, либо не берете вообще. Возможно такое когда-то произойдет, но точно не на наш век. А возможно человечество к этому моменту вымрет и интернет никому не будет нужен

Статья ни о том, насколько крут JS и что он спасет мир. Она о том, что если язык используют, то он имеет право на существование. Если он вам не нравится потому что вы ожидали чего-то другого, а получили это, это не проблема языка. Ваши ожидания это ваша проблема. На месте JS может быть любой другой язык и статься могла бы называться по другому. Просто прочел я статью именно о нем и написал высказал свои мысли приводя в пример JS. Вроде я нигде не восхвалял JS и не утверждал что он лучший. Печально, что я не сумел донести свою мысль правильно

Если кому-то не норм и он неиронично начинает хейтить технологию, то да. Ведь это статься не про JS, она про хейт в сторону ткхнологий, которые применяют, которыми решают задачи и делают это довольно хорошо, но почему-то хейтеру это не нравится, ведь его ЯП работает по другому. Вместо JS ту мог бы быть любой другой язык, просто я прочел статью и комменты к ннй именно о нём, вот и решил написать свою. Печально, что я не смог донести эту идею правильно. Возможно мне ещё учиться и учиться правильно подавать информацию, а возможно вы попросту не хотите этого понимать, потому что статья про JS

Да нет. Я скорее всего откажусь работать с ним, если у меня будет такая возможность. Но если кто-то его использует и ему норм, то я не стану доказывать, что он ничего не понимает и ему срочно нужно сменить технологию, а его нынешняя должна умереть. У этой технологии есть свой ареал применения и я не собираюсь туда лезть ибо мне это не особо интересно.


Люди, которые утверждают что их технология лучшая есть везде. Это вызвано тем, что они ещё неопытные и не сталкивались с недостатками их технологий. Просто вкатиться в веб и изучить JS проще чем ту же Джаву, возможно поэтому таких в JS сообществе больше

Скажите, откуда такая ненависть к JS. Это не просто нежелание использовать неудобный вам инструмент, это какая-то иррациональная ненависть. Будто вам заставляли разрабатывать на нем в темном подвале. Так яро доказывая несостоятельность JS вы ничем не лучше тех, кто его восхваляет

В сообществе любого языка есть множество людей, которые будут доказывать его превосходство над остальными языками вопреки реальным фактам. Это не делает его плохим. У JavaScript была альтернатива в виде JScript, но по каким-то причинам она проиграла. Возможно мне никогда не приходилось работать с проектом, где все эти недостатки JS стали бы проблемой, возможно мне просто очень повезло, а вам нет. Но когда мне пришлось разрабатывать UI на JavaFX, это было ужасным опытом. Хоть там был не JavaScript, а к Java, как и в принципе к другим ЯП неприязни у меня нет

1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность