Как начинающие программисты решают задачи и как это делают более опытные?

Поделиться
HTML-код
  • Опубликовано: 22 дек 2024

Комментарии • 31

  • @Виктория-ш8н3л
    @Виктория-ш8н3л Год назад +2

    Всегда было интересно посмотреть как ПРО решаю задачи))

    • @sanya-it
      @sanya-it  Год назад +2

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

  • @antonzorin5071
    @antonzorin5071 Год назад +1

    Для первого видео очень даже не плохо! Желаю удачи с каналом!)

    • @sanya-it
      @sanya-it  Год назад

      Большое спасибо)

  • @Denis-An
    @Denis-An Год назад +3

    А если в предпоследнем варианте вместо массива в ручную использовать const date = new Date(); date.setMounth(number-1); return date.toLocalString(ru-Ru, {month:'long'}); вариант честно подсмотрен в инете. И выбор языка довольно просто будет поменять

    • @sanya-it
      @sanya-it  Год назад

      Действительно, неплохое решение. Не стал использовать из-за того что очень специфично к языку.

    • @Denis-An
      @Denis-An Год назад

      @@sanya-it тогда тебе стоит пояснить, что значит очень специфично к языку?

    • @sanya-it
      @sanya-it  Год назад

      @@Denis-An это значит, что в C# или Java так не сделать. Или сделать, но будет очень непохоже. А массивы есть практически в любом языке программирования.
      Моя цель была в том, чтобы показать решения, которые будут понятны начинающим разработчикам на всех языках программирования.

    • @Denis-An
      @Denis-An Год назад

      @@sanya-it а, понял

  • @vonmansfeld2244
    @vonmansfeld2244 Год назад +1

    про синьора: а как же yagni?

  • @plaginnn3886
    @plaginnn3886 Год назад

    А что если первое что в голову пришло, это сделать обьект куда завести все месяцы (ключ - нумарация, значение - месяц) , без условий обойтись, это на какой уровень тянет?Пример :
    const getMonthByNumber = monthNumber => {
    const Year = {
    1: 'January',
    2: 'February',
    3: 'March',
    4: 'April',
    5: 'May',
    6: 'June',
    7: 'July',
    8: 'August',
    9: 'September',
    10: 'October',
    11: 'November',
    12: 'December',
    }
    return Year[monthNumber]
    }

    • @sanya-it
      @sanya-it  Год назад

      Ну это почти как сделать с помощью массива)

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

    А где проверка на правильность ввода языка? Вот так вот снова скатываемся до уровня джуна!

  • @niknik6004
    @niknik6004 Год назад

    Первым вариантом пришло в голову использовать библиотеки с локализацией, вторым 4ый вариант с TypeScrypt

    • @sanya-it
      @sanya-it  Год назад

      Действительно, и я думал использовать эти вещи.
      Но в инструментах себя ограничил (в том числе и TS), т.к. не все понимают что за npm такой, а хотелось сделать видео понятным всем, кто хоть как-то знаком с программированием.

  • @edgar_k
    @edgar_k Год назад +1

    Зачем писать в условии "monthNumber

    • @sanya-it
      @sanya-it  Год назад

      По логике, меньше либо равно нуля это значит "не положительное число", а меньше единицы - это меньше единицы)
      Хотя технически работать и так и так будет.

  • @CTILET
    @CTILET Год назад

    Вот это я нашел !

  • @_P.S.
    @_P.S. Год назад

    Как опытный пользователь приложения втб - могу спросить: как можно доверять словам человека, который создал и поддерживает паршивое, глючное приложение!? Чего стоят его слова, если у этого техлида приложение с постоянными багами!...

    • @sanya-it
      @sanya-it  Год назад +2

      Павел, ты наверное не понимаешь масштабов современной разработки. У ВТБ в разработке задействованы несколько тысяч человек.
      Приложение для физлиц это, кстати, далеко не единственный ИТ-продукт банка. Более того, даже это приложение развивает не одна команда, а десятки команд, каждая отвечает за свой раздел.
      К сожалению или счастью, но я задействован на проектах, которые с этим приложением для клиентов-физлиц на данный момент никак не пересекаются.

  • @LegacyAnemos
    @LegacyAnemos Год назад

    Сын уже тянет на джуниора?))

    • @sanya-it
      @sanya-it  Год назад

      Сын пока фоткался расколбасил клавиатуру, перестала работать)) может геймером будет)

  • @Iwalkaroundtheworld
    @Iwalkaroundtheworld Год назад

    Hello

  • @kazbowski
    @kazbowski Год назад

    Хороший вариант был бы с маппой:
    Map months = new HashMap();
    months.put(3, "Март"); // (и тд)
    ..
    months.get(3) // март
    С массивом могут быть траблы, например, если будет задача, где числа не линейные (например 1, 8, 15, 16, 20, 100)

  • @qqjjqj
    @qqjjqj Год назад +1

    const months = {
    1: "Январь",
    2: "Февраль",
    3: "Март",
    4: "Апрель",
    5: "Май",
    6: "Июнь",
    7: "Июль",
    8: "Август",
    9: "Сентябрь",
    10: "Октябрь",
    11: "Ноябрь",
    12: "Декабрь",
    }
    const getMonthByNumber = (monthNumber) => {
    return months[monthNumber] || 'Нет такого месяца';
    }
    - Объекты работают быстрее массива
    - Чтобы не тратить память при каждом вызове, объект вынесен наружу

    • @sanya-it
      @sanya-it  Год назад

      "Объекты работают быстрее массива" - можно ссылку на актуальный бенчмарк?

    • @antonbuldigin1816
      @antonbuldigin1816 Год назад +1

      по массиву не идет перебор если просто говорить. В примере автора значение вытаскивается по индексу, то есть сложность будет одинаковая. Но с объектом больше нравится вариант