Задать вопрос
Fitzjerald
@Fitzjerald

Нужно ли тратить кучу времени на задачу, которую знаешь как можно решить, но не до конца получается самому реализовать решение?

Здравствуйте. Уже как месяца два изучаю javascript. Для этого использую некоторые интернет-ресурсы. На одном ресурсе наткнулся на курс упражнений, где предлагается писать базовые алгоритмы. Ну они из разряда "заменить выбранное слово на другое выбранное" и т.д. Так вот я сталкиваюсь иногда с проблемой, когда знаю как можно решить эту задачу, что для этого нужно сделать, но реализация алгоритма меня иногда бросает в ступор. Например, как правильно пройтись по циклу, как правильно выцепить именно нужные элементы массива и т.д. В итоге я просто нахожу в интернете алгоритмы по данным действиям, совмещаю их, чтобы все это позволило решить задачу и прохожу дальше. Сразу скажу, что так я сделал пару раз, да и в основном это связано было с моим состоянием, когда тупо хотелось пойти дальше и было влом засиживаться на одной задаче. Для меня проблема заключается в том, что я не знаю - правильно ли так вообще делать? Просто мой препод всегда говорил, что хороший программист не тот, который знает, как решить, а тот, который знает где найти решение. Но свою жизненную позицию по одному высказыванию я выстраивать не собираюсь) В общем, как лучше всего заниматься самообучением? Стоит ли тратить время на решение каждой задачи, если знаешь, что для ее решения необходимо сделать? Или потом все это придет с опытом и зря я развожу панику?
  • Вопрос задан
  • 601 просмотр
Подписаться 2 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 6
Я против изобретения велосипедов, если алгоритм который вы нашли полностью решает проблему, то почему бы и не применить! Есть правда одно НО! Вы должны полностью понимать что написано в скопированном коде, иначе рискуете попасть в просак.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Программирование
software engineer
Сохраняй написанные тобой скриптики в какую-то папку.
И подсматривай в них, если нужно написать банальные циклы.
Иногда можно найти новый алгоритм в инете и сравнить у тебя так же или что-то новое.

А на самом деле, 2 месяца - ОЧЕНЬ МАЛО. Копи опыт и примеры своих рабочих скриптов. Каждый программист юзает свои шпаргалки
Ответ написан
Комментировать
@Psaproxy
Web-разработчик
Рекомендую делать вывод на основании:
- цели, которая стоит при разработке задачи
- ожидаемого результат от проделанной работы

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

Если задача без ограничений, то разбираться в зависимости от сути задачи и времени на изучение:
- как правильно обойти массив и найти нужный элемент на страницы - это базовые задачи, которые необходимо уметь делать не задумываясь
- реализация анимации элементов может занять много времени, но хотя бы разок выполнить на чистом JS надо
- написание своей версии jQuery не рекомендуется
Ответ написан
Комментировать
@z0rgoyok
Стоит конечно, базовые вещи надо делать на автомате, память мышц, так сказать. Если вы не консультант в разработке ПО :)
Ответ написан
Комментировать
@abcd0x00
Для меня проблема заключается в том, что я не знаю - правильно ли так вообще делать?


Этим ты ведёшь себя к состоянию "я всё, всё, всё знаю, только вот написать не могу ничего". И таких "программистов" в мире - вагон и маленькая тележка. Они ничего не делают, только пользуются чужими программами.
Ответ написан
Комментировать
copist
@copist
Empower people to give
Есть негласная рекомендация по использованию чужого кода, найденного в интернет: нужно посмотреть решение, понять его, заглянуть в мануалы, уточнить неясные места у автора ответа, закрыть и повторить решение по памяти.

Копипаст - это зло. Иначе когда-нибудь нарвёшься на ```rm -rf /``` с 100 плюсами и выбранный как решение и получишь попоболь.

Более продуктивным считаю отдавать свой рабочий или нерабочий код на ревью коллегам. Тебе укажут на ошибки, дадут ссылки на документацию, может быть даже поправят.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы