Как запомнить классы, функции и методы в программировании и сэкономить время?

Изучаю Python, но вопрос относится и к другим ЯП. Много различной информации приходится запоминать или записывать, чтобы потом подглядеть и вспомнить. Сотни и тысячи различных методов. Неужели их все реально запомнить. Несомненно, что со временем они усвоятся и сложности с их вспоминанием, возможно, отпадут. А как у вас было? Может быть используете какие-то приемы, техники, софт?
  • Вопрос задан
  • 9349 просмотров
Решения вопроса 7
27cm
@27cm
TODO: Написать статус
Запоминать всё не надо. Нужно пользоваться документацией, иметь под рукой удобные справочники (лучше online c возможностью поиска). Многие используют cheat sheet вроде этого. То, что будете часто использовать, само собой запомнится.
Ответ написан
Rou1997
@Rou1997
А я головой думал.
Нет никакого смысла запоминать классы, функции и методы, мозг человека - это аналоговый компьютер, поэтому ему в разы тяжелее запомнить "сырые" байты, чем цифровым, таким, как сервера Google и т.п., и умещается их меньше, срабатывает "сборка мусора", забываете.
Кесарю - кесарево, а аналоговому компьютеру - аналоговые данные, то есть абстрактные образы, например: "чтобы передать данные по сети, нужно сделать POST-запрос, а чтобы получить - нужен GET-запрос", "оба типа запросов являются HTTP-запросами, поэтому понадобится библиотека для работы с HTTP".
Такие "логические" образы, очевидно, формируются только в процессе реализации задач, а не "зубрения" теории, "зубрение" - это опять "сырые" байты, неэффективно, а использование нескольких языков, очевидно, ускоряет их формирование.
Еще во многих случаях есть смысл писать Utils/Helpers, почитайте, что это такое.
Ответ написан
Комментировать
Зачем их запоминать, скажите пожалуйста?
Определили задачу -> Написали запрос в поисковик -> Нашли подходящее решение.
То, что часто используется запомнится само, редко используемое запоминать и не нужно.
Ответ написан
@fireSparrow
Я использую Anki - это программа, которая изначально была создана для запоминания слов иностранных языков.
Очень удобно - в метро каждое утро трачу 10 минут на повторение.
Anki хороша тем, что в ней реализован принцип интервального повторения. То есть, в первые дни каждую заучиваемую единицу программа показывает каждый день, а потом, если она хорошо усвоилась - всё реже и реже.
Таким образом можно выучить и поддерживать в активной памяти большой массив информации, затрачивая совсем немного времени.

Всё подряд заучивать смысла нет, но существует широкий пласт методов, функций и классов, которые с одной стороны достаточно универсальны, чтобы оказаться полезными в очень разных задачах, но при этом в повседневной работе мало используются.
Ответ написан
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Не нужно заучивать, нужно запоминать что есть подобная функция где-то в этом пакете. При том, что производительность рядового программиста 5-8 строк в час, всегда есть время найти нужный функционал по ассоциации через поиск.
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
времени на чтение кода тратится больше в разы, если вообще не на порядок, вот там надо экономить, соблюдать правила именования и т.п.
Ответ написан
Комментировать
@egormmm
Борітеся — поборете!
Считаю, что ваш вопрос намного шире: как вообще быстро и безошибочно запоминать то, что нужно? Есть такая совокупность приемов, называемая "Мнемотехника", очень помогает.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@abcd0x00
Сначала проходишь всё один раз и подробно. При прохождении каждого раздела делаешь файл с заметками для него. После прохождения раздела читаешь этот файл с заметками снова.

Ещё сделай себе html-страницу, где помещай ссылки на разделы, на стандарты, на страницы с материалом.
Через эту страницу входи каждый раз, чтобы продолжить обучение. На этой же странице отмечай то, что ты уже прошёл.

Потом делаешь одну html-страницу для всех своих html-страниц. (Прямо на диске переходишь между ними, никаких интернетов не надо.)

Подробности

Почему надо проходить полностью? Потому что если ты не пройдёшь все нюансы, ты не будешь знать их. А когда ты не знаешь нюансы, ты начинаешь писать всякую лишнюю хрень. Очень часто при открытии файла на чтение в питоне пишут 'r'. А почему? А потому что не читали полное описание open(), в котором написано, что по умолчанию там всегда 'r'. А когда точно не знают, начинают писать на всякий случай. То же самое касается кодировки в третьем питоне. Вот человек не знает, что там кодировку по умолчанию поменяли, и пишет там всегда "#encoding: utf-8", и удалить боится, потому что не знает, можно ли удалить. А чтобы знать, надо читать PEP, а он не читал.
Ответ написан
Комментировать
@apletnev
Уважаемый Александр уже писал про Anki (spaced repetition tehnique). ИМХО это лучшая система для запоминания чего либо, в том числе и методов.
Есть курс по тому как запоминать и учится (там тоже рекомендуют Anki). Вы можете ознакомиться вот здесь.
Ответ написан
Комментировать
@potan
Функциональный программист
Для статически типизированных языков можно не запоминать - нужные вещи подсказывает IDE или они легко ищутся по сигнатурам.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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