Главная | Все статьи | Дневник студента

Мой подход к решению испытаний на Хекслет

Время чтения статьи ~1 минута
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Мой подход к решению испытаний на Хекслет главное изображение

Введение

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

Алгоритм действий при решении испытаний:

  1. Внимательно и вдумчиво прочитать техническое задание. Иногда задачу не получается решить только из-за того, что упущена какая-то малозначительная подробность, из-за неё может не пройти единственный тест, но его одного хватит чтобы запороть задание, а заодно и ваше нервы.
  2. Просмотреть файл с тестами, найти пограничные случаи работы функции (border cases) и начать с них. Но не стоит злоупотреблять тестами, а именно подгонять решение под каждый тест, вместо написания алгоритма. Это медвежья услуга. К тому же, подробное изучение тестов позволяет прочувствовать логику задачи в целом и разбить её на этапы.
  3. Если задача связана с математикой (например: умножение матриц или треугольник Паскаля), найти информацию об этом алгоритме в интернете. Не нужно заново изобретать велосипед.
  4. Почитать, с какими сложностями столкнулись другие пользователи Хекслета в обсуждениях испытания. Особенно актуально, когда все предыдущие пункты не помогают, и вы все ещё сидите с пустым экраном.
  5. Если все же задача никак не получается, оставить её на время, и решить схожее испытание из этого же курса.
  6. Не забывайте об отладочной печати!
  7. После успешного прохождения всех тестов, сравнить свой вариант с вариантом учителя и посмотреть другие ревью. Попробовать реализовать это же испытание в другой парадигме. Чем больше вариантов, тем выше понимание данной темы.

Заключение

Не бойтесь решать сложные задачи, это единственный путь к росту как специалиста. Для меня самыми сложными были испытания "без двух нулей" и "обратная польская запись". Помимо программирования для их решения, нужно еще подтянуть знание комбинаторики и систем счисления. Испытание с римскими цифрами я решил через switch-case, рассматривая каждый случай в отдельности. Сравнив с решением учителя, я понял всю красоту использования объектов.

Аватар пользователя Владислав Беспалов
7
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 25 апреля
профессия
от 9 900 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
в разработке
Старт 25 апреля
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время