Эльбрус Буткемп: школа программирования
Эльбрус Буткемп: школа программирования
  • Видео 258
  • Просмотров 891 225
Эти фреймворки и библиотеки вам могут понадобиться! Лучшие инструменты для JavaScript
💪 Бесплатный тренажер по JavaScript
go.elbrusboot.camp/edue
В этом видео расскажу о самых топовых инструментах на JavaScript: о библиотеках и фреймворках, которые смело можно использовать в своих проектах! Вы узнаете, какие фреймворки и библиотеки для JS действительно стоит изучить, чтобы улучшить свои навыки программирования и создавать современные веб-приложения.
Ещё больше полезных статей и задач в нашем телеграм-канале 👉🏻 t.me/+LUYGBz9SxjwwNzNi
Кто мы такие❓
Эльбрус Буткемп - это первая (с 2018 г) в России школа IT-профессий в формате интенсивного обучения с карьерной поддержкой при трудоустройстве. Студенты 12 недель практикуются на реальных проектах и учатся с утра до вечера, погружаясь ...
Просмотров: 136

Видео

Решаю тремя способами задачу на JavaScript! Как Junior, Middle и Senior
Просмотров 650День назад
🎉 Скидка 50% на курсы! Основы JavaScript: go.elbrusboot.camp/js_basics Основы Data Science: go.elbrusboot.camp/ds_basics- В этом видео решаем задачу подписчика на JavaScript сразу тремя способами: как Junior, Middle и Senior разработчик. Мы сравним подходы к решению, рассмотрим плюсы и минусы каждого уровня и выберем оптимальный вариант. Присоединяйтесь к любимой рубрике зрителей и узнайте, как...
Это просто! Алгоритмы и структуры данных. Объясняю и показываю на практике
Просмотров 1,3 тыс.14 дней назад
🎉 Скидка 50% на курсы! Основы JavaScript: go.elbrusboot.camp/js-basic Основы Data Science: go.elbrusboot.camp/ds-basic В этом видео мы погрузимся алгоритмы и структуры данных, акцентируя внимание на популярных методах сортировки, таких как сортировка пузырьком, сортировка вставками и сортировка слиянием. На практических примерах на языке JavaScript мы разберём, как эти алгоритмы работают и заче...
Решение задач Codewars JS | Junior, Middle, Senior | ЧАСТЬ 5
Просмотров 3,9 тыс.21 день назад
🎉 Скидка 50% на курсы! Основы JavaScript: go.elbrusboot.camp/js-basics Основы Data Science: go.elbrusboot.camp/ds-basics- Продолжение полюбившейся многим серии видео от Александра Князева, mentor lead направления JavaScript Москва. Решаем задачи уровня 7 Kyu на CodeWars как джун, миддл и синьор разработчик! Ещё больше полезных статей и задач в нашем телеграм-канале 👉🏻 t.me/ LUYGBz9SxjwwNzNi Кто...
№5 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Просмотров 455Месяц назад
Ещё больше полезных статей и задач в нашем телеграм-канале 👉🏻 t.me/ LUYGBz9SxjwwNzNi Заключительная часть проекта Sticky Notes на JavaScript c Настей Гюрджиян. Практикуйтесь вместе с нами! Sticky notes, они же липкие заметки - полезная функция для создания напоминаний и памяток. Вместе с Настей Гюрджиян учимся создавать sticky notes на JavaScript. В четвёртом видео поговорим про DOM и начнём ож...
Решение задач Codewars JS | Junior, Middle, Senior | ЧАСТЬ 4
Просмотров 1,4 тыс.2 месяца назад
Ещё больше полезных статей и задач в нашем телеграм-канале 👉🏻 t.me/ LUYGBz9SxjwwNzNi Продолжение полюбившейся многим серии видео от Александра Князева, mentor lead направления JavaScript Москва. Решаем задачи уровня 7 Kyu на CodeWars как джун, миддл и синьор разработчик! Кто мы такие❓ Эльбрус Буткемп - это первая и самая крупная в России школа программирования в формате интенсивного обучения. С...
Ответы на частые вопросы про Эльбрус Буткемп
Просмотров 3082 месяца назад
Ещё больше полезных статей и задач в нашем телеграм-канале 👉🏻 t.me/ LUYGBz9SxjwwNzNi Есть вопросы про буткемп? Маша Васильева, руководитель приемной комиссии, отвечает на самые частые и самые волнующие вопросы об Эльбрусе! Кто мы такие❓ Эльбрус Буткемп - это первая и самая крупная в России школа программирования в формате интенсивного обучения. Студенты 12 недель оффлайн или 15 недель онлайн пр...
Решение задач Codewars JS | Junior, Middle, Senior | ЧАСТЬ 3
Просмотров 9 тыс.2 месяца назад
🎁 Бесплатные мастер-классы 👉🏻 go.elbrusboot.camp/MkS-s 🤓 День открытых дверей в буткемпе 👉🏻 go.elbrusboot.camp/js_-dod Как джун, миддл и синьор разработчик решают задачи на CodeWars? Узнайте вместе с Александром Князевым, mentor lead направления JavaScript Москва, на примере 6 Kyu! Кто мы такие❓ Эльбрус Буткемп - это первая и самая крупная в России школа программирования в формате интенсивного ...
Истории успеха наших выпускников | Эльбрус Буткемп
Просмотров 3442 месяца назад
Исходное видео: Путь в преподавание Тимофея Хирьянова / Окончить МФТИ и не сойти с ума 👉🏻 ruclips.net/video/uyS4rj9mvKE/видео.html Моряк, продавец овощей, сварщик холодного цеха, мать пятерых детей - что у них общего? 4 разные истории о том, как одно важное решение меняет жизнь к лучшему. Что такое буткемп ❓ Буткемп - методика, которую использовали в лагерях для подготовки солдат. Чтобы стать п...
№4 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Просмотров 1,3 тыс.3 месяца назад
№4 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Решение задач Codewars JS | Junior, Middle, Senior | ЧАСТЬ 2
Просмотров 2,7 тыс.3 месяца назад
Решение задач Codewars JS | Junior, Middle, Senior | ЧАСТЬ 2
Решение задач Codewars JS | Junior, Middle, Senior | | Junior, Middle, Senior
Просмотров 9 тыс.3 месяца назад
Решение задач Codewars JS | Junior, Middle, Senior | | Junior, Middle, Senior
Решаем задачи 7 и 8 kyu на codewars | Задачи на JavaScript для начинающих
Просмотров 8824 месяца назад
Решаем задачи 7 и 8 kyu на codewars | Задачи на JavaScript для начинающих
Как добавить стили CSS на страницу?
Просмотров 1594 месяца назад
Как добавить стили CSS на страницу?
№3 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Просмотров 1,2 тыс.4 месяца назад
№3 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
№2 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Просмотров 1,1 тыс.4 месяца назад
№2 Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Как создать html-страницу?
Просмотров 2414 месяца назад
Как создать html-страницу?
Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Просмотров 1,5 тыс.4 месяца назад
Как написать программу Sticky notes на JavaScript | Реальные проекты для начинающих
Как установить Node.js на macOS: Видео инструкция
Просмотров 2574 месяца назад
Как установить Node.js на macOS: Видео инструкция
Собеседование Data Science Junior: Вопросы и задания | Эльбрус Буткемп
Просмотров 8255 месяцев назад
Собеседование Data Science Junior: Вопросы и задания | Эльбрус Буткемп
Медицина в Data Science | День открытых дверей
Просмотров 1945 месяцев назад
Медицина в Data Science | День открытых дверей
Решаем задачи на JavaScript | для начинающих №4
Просмотров 8265 месяцев назад
Решаем задачи на JavaScript | для начинающих №4
Как стать программистом? С нуля до Middle | Elbrus Bootcamp
Просмотров 1,5 тыс.5 месяцев назад
Как стать программистом? С нуля до Middle | Elbrus Bootcamp
Топ-11 книг по алгоритмам
Просмотров 2 тыс.6 месяцев назад
Топ-11 книг по алгоритмам
Решаем задачи на JavaScript | №3
Просмотров 8066 месяцев назад
Решаем задачи на JavaScript | №3
Циклы, агрегация данных, синтаксический сахар | Уроки JavaScript для начинающих #4
Просмотров 3886 месяцев назад
Циклы, агрегация данных, синтаксический сахар | Уроки JavaScript для начинающих #4
Решаем задачи на JavaScript | для начинающих №2
Просмотров 7156 месяцев назад
Решаем задачи на JavaScript | для начинающих №2
Операторы, условные конструкции и функции | Уроки JavaScript для начинающих #3
Просмотров 2566 месяцев назад
Операторы, условные конструкции и функции | Уроки JavaScript для начинающих #3
Где учить программирование? Подборка бесплатных ресурсов 2023
Просмотров 6186 месяцев назад
Где учить программирование? Подборка бесплатных ресурсов 2023
Что должен знать джуниор? JavaScript разработчик и Data Scientist
Просмотров 6277 месяцев назад
Что должен знать джуниор? JavaScript разработчик и Data Scientist

Комментарии

  • @virtuoz-ru
    @virtuoz-ru День назад

    Реакт это безпонтовая шляпа, состоящая из сторонних библиотек.

  • @YouTube57samp
    @YouTube57samp День назад

    Понятно все объясняешь за это респект, думаю если ты бы снял обучение питону с нуля то это принесло бы тебе много подписчиков👍👍👍

  • @user-sc3ht8ti4o
    @user-sc3ht8ti4o День назад

    Спасибо, Анастасия!!!!

  • @user-bv9fs5bx9o
    @user-bv9fs5bx9o День назад

    Спасибо, очень ценная инфа.

  • @Mark-wn4op
    @Mark-wn4op 4 дня назад

    symbol и bigint пошли гулять

  • @YellowPanamka
    @YellowPanamka 5 дней назад

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

  • @no101vmv
    @no101vmv 5 дней назад

    В общем ссылки ютуб удаляет. Решение такое. 1. Проходимся по первому слову слева до тех пор пока не встретим букву увеличивая левый указатель. 2. Далее делаем тоже самое со вторым словом но справа уменьшая правый указатель. 3. Все буквы приводим сразу к одному регистру. 4. Если эти буквы разные и переменная isPalindrom = true(при создании переменной по умолчанию задаем тру) - то переменная палиндром становится фолс. 5. Если в map отсутствует буква полученная из слова слева - записываем ее туда со значением 1. Иначе добавляем к значению под этой буквой - 1. 6. Если буква из слова справа отсутствует в мапе, добавляем ее со значением -1. Иначе уменьшаем значение в сапе на 1. Двигаем левый и правый указатель. Если в мапе есть хотя бы одно значение отличное от 0 - значит слова не анаграммы.

    • @Grentanksmog
      @Grentanksmog 5 дней назад

      Классное решение! По сути, ты используешь один объект частотностей, в котором делаешь ±1, а также не проходишь по каждому слову дважды. То есть за один проход по слову ты и собираешь частотность, и проверяешь палиндромность. Это любопытный пример, когда моё решение, которое следует принципу единственной ответственности (SRP, как в принципах SOLID) является более вычислительно затратным, нежели когда всё совместно вычисляется.

  • @no101vmv
    @no101vmv 5 дней назад

    не понимаю куда пропадает мой комментарий.... 1. Видимо плохо объяснил условие(((( В общем сравнивать нужно было является ли первое слово палиндромом для второго. 2. Я прикладывал решение на питоне. Но что то комент пропадает.

  • @gamepad3140
    @gamepad3140 6 дней назад

    Столько подводных камней не объяснили, а ребята мучаются. 1) Снимите ограничения с PowerShell через Set-ExecutionPolicy RemoteSigned (запуск от администратора) 2) На винде venv активируется через venv\Scripts\activate 3) в обычной версии aiogram нету executor, надо скачивать новую pip install --force-reinstall -v "aiogram==2.23.1" 4) нет комментариев от вас по теме 6-й строки про логгирование

  • @polalp8599
    @polalp8599 7 дней назад

    можно сделать быстрее, насколько я понимаю. Можно создавать только одну хеш таблицу, а затем проходиться циклом по буквам из второго слова, вычитая эти символы из таблицы. Так мы избавимся от лишнего цикла. потом проверить, что все object.value равны 0

    • @Grentanksmog
      @Grentanksmog 6 дней назад

      Какая интересная идея! Звучит здраво 👏

    • @no101vmv
      @no101vmv 5 дней назад

      Логичнее проверить что хотя бы один не равен 0) any

  • @user-oz3ze5eb3s
    @user-oz3ze5eb3s 7 дней назад

    а как находить задачи определенного типа например я хочу по решать задачт связанные с типом словарь

    • @ElbrusBootcamp
      @ElbrusBootcamp 5 дней назад

      На платформах LeetCode, HackerRank, и CodeSignal задачи можно фильтровать по конкретным темам и структурам данных, включая словари.

  • @romanmed9035
    @romanmed9035 8 дней назад

    а не надо ли изначально сравнить строки на размер для первой проверки? если он разный, то явно что не одинаковые и нет смысла далее проверять. конечно на 100 символах это не важно, а на 100тыс уже имеет значение. да вероятно и во втором так же, хотя тут уже не уверен. и третье решение второго варианта все же очень много раз итерации по строкам проходит да еще и не в одном месте.

    • @Grentanksmog
      @Grentanksmog 7 дней назад

      Да, очень верное замечание! Перед тем, как переходить к циклам и всем остальным проверкам стоит вначале проверить длину строк 👏

    • @romanmed9035
      @romanmed9035 6 дней назад

      @@Grentanksmog спасибо.

    • @no101vmv
      @no101vmv 5 дней назад

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

  • @abdiqadyryerzhanov7820
    @abdiqadyryerzhanov7820 8 дней назад

    Приветствую! Я думаю, интереснее будет реальные задачи во фронтенде или бэкенде, логические, это личное мое мнение!

  • @user-ud3uw3cf4s
    @user-ud3uw3cf4s 9 дней назад

    это гениально, и комментаторы гении

  • @egoreast
    @egoreast 11 дней назад

    const add = (numbers) => numbers.reduce((acc, curr) => { const lastInAcc = acc.at(-1) if (!lastInAcc) return [curr] return [...acc, lastInAcc + curr] }, [])

  • @XSanjarX
    @XSanjarX 11 дней назад

    почему у меня не работает функция await

  • @ArtFanRamm
    @ArtFanRamm 12 дней назад

    Сортировка конечно тоже ок, но было бы неплохо послушать более advanced темы, типа алгоритмических паттернов, скользящее окно например. Это было бы полезней при решении задач

  • @kitN
    @kitN 12 дней назад

    Какая назуй сортивровка пузырьком? Тетя ты моросишь детский бред, займись делом

  • @panfilovandrey
    @panfilovandrey 12 дней назад

    Опять какие-то сомнительные подходы. Ну джун понятно все сделал в лоб, Я сразу подумал, что можно вытащить значения, причем вытаскивать индексы месяцев не имело смысла, можно было вытаскивать значения и по ним циклом простым идти. Переменной итоговой достаточно одной, просто делать +1 или -1 в зависимости от значения. Два фильтра - это два раза проход по массиву, зачем? Тут просто цикл гораздо проще. Решение сеньора сомнительное в плане дальнейшей поддержки, если как-то поменяется формат входных данных, придется что-то придумывать. Да и читабельность кода хреновая. Сеньор не показывает знания всех методов, а следит за качеством кода и целостностью системы.

  • @AdskiyVolk
    @AdskiyVolk 12 дней назад

    Знаю этого актера 😂 Друг, спасибо за контент)

  • @kirillsundaen8810
    @kirillsundaen8810 14 дней назад

    Анастасия - красавица! только right, не rigth )

    •  14 дней назад

      Благодарю!) да, я исправила эту опечатку в конце) спасибо

  • @newjerseyAVGN
    @newjerseyAVGN 15 дней назад

    Это всё херня, попробуйте написать полноценный шелл на 20 команд. Копирование, перемещение, удаление файлов и папок, спеки компа, спеки сети и прочая лабуда. Дерзайте!

  • @user-xn2cr5oe4p
    @user-xn2cr5oe4p 15 дней назад

    Что за устаревшие циклы фор? Вы из двухтысячных вылезли????

    • @user-cp4px6oz5n
      @user-cp4px6oz5n 15 дней назад

      а какой ты тут хочешь предложить использовать?)

    • @user-xn2cr5oe4p
      @user-xn2cr5oe4p 14 дней назад

      @@user-cp4px6oz5n современные es 6 методы

    • @vitaly-
      @vitaly- 12 дней назад

      соболезную, если ты используешь циклы только по принципу новизны, а не те, которые подходят под конкретную ситуацию.

    • @user-xn2cr5oe4p
      @user-xn2cr5oe4p 12 дней назад

      @@vitaly- а я соболезную тебе , что ты застрявший в прошлом человечек, не готовый принимать новые технологии. Ты ещё поворчи типа: «Вот молодеж нынче пошла»….

    • @vitaly-
      @vitaly- 12 дней назад

      @@user-xn2cr5oe4p хахахахаах, какие технологии? и как ты собрался писать условие выхода из цикла "len - 1 - i" не используя for или while? школу хоть закончил бы, прежде чем такой бред писать...

  • @user-sc3ht8ti4o
    @user-sc3ht8ti4o 15 дней назад

    Спасибо!

  • @user-pz9dc1kk4d
    @user-pz9dc1kk4d 16 дней назад

    Супердоступно и понятно, спасибо большое!

  • @mcltdtm420
    @mcltdtm420 16 дней назад

    вариантов решений может быть много. только вот у меня вопрос относительно производительности каждого варианта. без тестов, на первый взгляд, решения "Джуна" самое быстрое. или я ошибаюсь?

    • @dadaVoloda
      @dadaVoloda 16 дней назад

      ошибаешься, у джуна O(n^2) сложность, у синьора O(n) вообще думаю большинство разработчиков решат эту задачу одинаково, без замыкания и в пару строк, потому что читабильность/понимание в приоритете let sum = 0 return arr.map(el => sum += el)

    • @mcltdtm420
      @mcltdtm420 16 дней назад

      @@dadaVoloda а Вы производительность кода по читабильности кода определяете?

    • @dadaVoloda
      @dadaVoloda 16 дней назад

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

    • @mcltdtm420
      @mcltdtm420 9 дней назад

      @@dadaVoloda 1. где вы увидели "у джуна O(n^2)"? там менше итераций цикла. 2. почему вы считаете, что перебор по циклу и в методе масива занимают одинаковое количество времени?

    • @mcltdtm420
      @mcltdtm420 9 дней назад

      ​@@dadaVoloda в случае с джуном код может иметь вид в один цикл как и в .map() function add(arr) { const sums = []; let sum = 0; for (let i = 0; i < arr.length; i++) { sum += arr[i]; sums.push(sum); } return sums; } так какой код производительней? джуниор з O(n) или .map() з O(n)?

  • @BLUEGLUETutorials
    @BLUEGLUETutorials 17 дней назад

    А ты попросил написать "hello world"

  • @aksenovkirill5191
    @aksenovkirill5191 18 дней назад

    Первую задачу, решая черех includes - это сразу O(n2) по времени Задачу надо решать через map = {}

  • @user-gz1wl2rp4v
    @user-gz1wl2rp4v 18 дней назад

    джуны не настолько тупые, чтобы в брутфорсить эту задачу...

  • @liltousin
    @liltousin 19 дней назад

    Сразу подумал решать через map, теперь я не джун без опыта а синьер без опыта😂

  • @Philormonia
    @Philormonia 19 дней назад

    Когда прописал команду pip install aiogram в терминал у меня скачался aiogram, но когда из его библиотеки импортировал бота и диспетчер, у меня выходила ошибка, что '('''Не удается разрешить импорт "aiogram"')''помогите исправить. Так было и с pytelegrambotapi не могу найти решение проблемы( , помогите пожалуйста

  • @clem4ik441
    @clem4ik441 19 дней назад

    Решаем задачку методом мидла, определенно, что то новое и безумное)

  • @inzoddex8312
    @inzoddex8312 19 дней назад

    Тем временем Питон import itertools as it print(*it.accumulate([*range(10)]))

    • @user-bl3iu7ob9e
      @user-bl3iu7ob9e 15 дней назад

      На ruby не только в одну строчку но и в 1 символ)))))

  • @romanzenia599
    @romanzenia599 19 дней назад

    Мое решение: const add = arr => arr.forEach((el, i) => arr[i] += arr[i - 1] ?? 0) ?? arr Тоже в одну строке, если автор так желает. Просто прогоняем через через "джуновский" цикл и суммируем последовательно значения

    • @mcltdtm420
      @mcltdtm420 9 дней назад

      я правильно понимаю, что этот код "arr[i] += arr[i - 1]" не должен содержать знак "="?

    • @romanzenia599
      @romanzenia599 8 дней назад

      @@mcltdtm420 Нет, += так и должно быть. Мы делаем сложение с присваиваем. Это эквивалент такой записи "arr[i] = arr[i] + arr[i - 1]"

  • @militant6709
    @militant6709 20 дней назад

    Сеньер решение просто ужасно, и вообще нету ни одного решения мидл+

  • @there1440
    @there1440 20 дней назад

    Я не знаком с js и слаб в прогроммировании, но junior не может писат такой плохой код😢 иначе я был бы им уже

  • @panfilovandrey
    @panfilovandrey 20 дней назад

    Задача очень простая, даже неинтересно ее разбирать. Какую шляпу выдал, зачем перебирать каждый раз все элементы, когда у нас на каждом шаге есть сумма предыдущих эл-тов? Она уже посчитана, сохрани ее в переменную и прибавь новый элемент, все. Чем плох цикл? Редус - не панацея, а просто один из инструментов, но пихать его в каждую щель - глупо. Учитывая, что миддл не додумался, что второй перебор ему не нужен, я сомневаюсь в квалификации такого специалиста. Сеньйорское решение вообще перемудреное, потом кто с этим кодом будет работать? Джуны? Они мозги сломают, что же в этой строчке происходит.

    • @user-bl3iu7ob9e
      @user-bl3iu7ob9e 18 дней назад

      мне до джуна еще далеко. но я бы написал как то так arr1.push(arr.shift()) while (arr.length) arr1.push(arr.shift() + arr1.at(-1)); хотя решение с мапой мне очень понравилось. супер. Дополняю. Проверил по скорости. с мапой конечно в 10 раз быстрее. Ну оно и понятно. без операций удаления и всё такое. кстати я понял код с мапой за исключением одного момента. Я так понял (0) это вызов функции где ты замыкание прописал, не мог бы ты пояснить этот момент. Почему сразу за объявлением функции идет её вызов. Думаю именно этот момент и непонятный для начинающих как я. И кстати код смотрится прикольней если ты сразу присваиваешь дефолтное значение sum. Тогда в скобках ноль писать не нужно. Так код становится еще страшней и не понятней))))))) добавка. Разобрался с этим синтаксисом, во время изучения web driver. )))

    • @nightriver7544
      @nightriver7544 15 дней назад

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

    • @mcltdtm420
      @mcltdtm420 9 дней назад

      @@user-bl3iu7ob9e скажите пожалуйста, а что произойдет с переданым массивом "arr" после исполнения вашего кода?

  • @WStasL
    @WStasL 20 дней назад

    Интересное видео, и комментарии Вот мой вариант решения, буду рад комментариям )): function generator(){ // Создаем массив с тремя обязательными символами let arr = [ ((~~(Math.random() * (36 - 12))) + 11).toString(36), // случайная строчная буква ((~~(Math.random() * (36 - 12))) + 11).toString(36).toUpperCase(), // случайная заглавная буква (~~(Math.random() * 10)) // случайная цифра ] let arr2 = Array.from({ length: 3 + (~~(Math.random() * 15)) }, (_,i)=>(~~(Math.random() * 36)).toString(36)); // создаем массив - случайные буквы и цифры от 3 до 17 arr2 = arr2.map((elm) => (~~(Math.random() * 2)) ? elm.toUpperCase() : elm) // случайно делаем некоторые буквы заглавными (не обязательно) let str = arr.concat(arr2).sort(() => Math.random() - 0.5).join(''); // Объединяем массивы, перемешиваем (не обязательно), объединяем в строку return str; }

  • @minimus91
    @minimus91 21 день назад

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

  • @user-bp4qw7nm8v
    @user-bp4qw7nm8v 21 день назад

    Первое решение скорее можно приписать тем, кто только начал изучать JS и массивы. Junior - всё тот же специалист с определённым багажом знаний, но с меньшим опытом, чем Middle, и я очень сомневаюсь что те, кто дошли до уровня джуна стали бы решать такую задачу вложенным циклом. Лично мне с ходу, так сказать "В лоб", в голову пришло такое решение const add = (arr: number[]): number[] => { const result: number[] = [arr[0]]; for (let i = 1; i < arr.length; i++) { const number = result.at(-1) + arr[i]; result.push(number); } return result; };

    • @user-yu4sr6fy4e
      @user-yu4sr6fy4e 21 день назад

      тоже с ходу это решение пришло в голову... вот бы узнать уровень такого решения!

    • @gkavboy
      @gkavboy 21 день назад

      function add(a) { let d = []; let s = 0; for (let i of a) { s += i; d.push(s); } return d; }

    • @Misha9446
      @Misha9446 16 дней назад

      @@user-yu4sr6fy4e вот это и есть сеньерное решение, простое, понятное и оптимальное

  • @gkavboy
    @gkavboy 21 день назад

    Зря вы так ((( мастерство сеньора не в том чтобы написать однострочник... Код должен быть легко поддерживаемым и читаемым. Да и не уверен что код оптимальнее чем одна итерация с push промежуточной суммой в новый массив

    • @user-yu4sr6fy4e
      @user-yu4sr6fy4e 21 день назад

      и тоже согласен... но думаю тут нужно дать скидку на абстрактность определения сеньора ... должен и так уметь !)

    • @gkavboy
      @gkavboy 21 день назад

      @@user-yu4sr6fy4e должен, но тогда надо понимать, что подобные видео смотрит много джунов... И у них складывается неверно впечатление к чему нужно стремится... Большинство кандидатов на собесе мне пытаются показать какие они крутые и могут пол экрана кода в односторочник запихать... А потом пол часа ищут баг))))

  • @andreika713
    @andreika713 21 день назад

    В общем, по мнению товарищей из эльбруса Джун это дебил, который добавляет лишний цикл вместо использования значения предыдущей итерации Мидл - дебил джун с колбэками Сеньор - дебил джун с колбэками из конструкций, которые нельзя прочитать не напрягаясь

  • @user-vv1vz5wx6k
    @user-vv1vz5wx6k 22 дня назад

    Ошибка name 'Bot' is not defined

  • @user-gp9pe1jo4l
    @user-gp9pe1jo4l 24 дня назад

    Спасибо за обзор!

  • @user-tj8km4hd1z
    @user-tj8km4hd1z 29 дней назад

    Почему 33 пропала при консоль.логе перебора "j" ?

  • @borzda6898
    @borzda6898 Месяц назад

    👍🤝

  • @bethswann8289
    @bethswann8289 Месяц назад

    Пишет, что модуль executor не существует. Что делать?

    • @Hurry_Gregor
      @Hurry_Gregor 17 дней назад

      в версии аиограм3 вырезали executor а старые версии я сам не могу скачать

  • @user-oc9dk3jh6t
    @user-oc9dk3jh6t Месяц назад

    никак

  • @user-gs1th5lt5v
    @user-gs1th5lt5v Месяц назад

    Вакутагин???