Карточки составления шагов
листай вправо
Шаги
листай вправо или вниз
Пройди туториал
сложность кодинга в след.шаге
Реализуй фичу
крутизна проекта
Мотивация
Почему заказчик просит об этой фиче?
Почему пользователи будут страдать без этой фичи?
Как фича упростит/ускорит работу над проектом?
Цель
Как проверить, что фича готова к использованию?
Как проверить, что я ничего не сломал?
Коммит `Что и зачем было сделано?`
Название
Как назовут фичу в смете проекта?
Примеры
???
Подготовься к фиче
сложность кодинга в след.шаге
Мотивация
К какой фиче я готовлюсь?
Цель
крутизна проекта
Примеры
???
Приберись в коде
Мотивация
Копипасть код плохо, это знают даже дети
Чем быстрее работает сайт, тем приятнее им пользоваться
Цель
Код будет выглядеть вот так: ....
Останется вот столько запросов в Debug Toolbar:
крутизна проекта
Примеры
Вынесите код в функцию
Воспользуйтесь партиалом
Распилите index на запросы
Оптимизируйте кол-во запросов
сложность кодинга в след.шаге
Запусти проект
Мотивация
???
Цель
???
крутизна проекта
Примеры
Запустите сайт
Вытяни данные
Мотивация
???
Цель
Как увидеть что я нашёл что искал?
Отладочный print
Скриншот HTML странички с данными
Список названий выведенных на HTML страничке
Примеры
Подключитесь к базе данных
Загрузите карточки товаров (из БД в manage.py shell)
Найдите популярные книги (из БД в manage.py shell)
сложность кодинга в след.шаге
Новый скрипт
Мотивация
???
Цель
???
Примеры
Надо спарсить еще одну страницу, сделай это в отдельном скрипте
сложность след.шага
Вводим новые технологии на простом кейсе, откладываем на потом интеграцию с основной программой
Закрепляем старые навыки через повторение - заново подключить requests, BeautifulSoup
Облегчает ученику следующие шаги, ему надо меньше помощи и подпорок
Модификаторы
листай вниз
Разбей фичу на две
сложность кодинга
крутизна проекта
Примеры
???
Возьми готовый код
сложность кодинга
Примеры
Gist с кодом и примерами использования
Ответ на StackOverflow
Библиотека на PyPi
В готовый код хорошо выносить всё что трудоёмко, но не имеет учебной ценности
Сделай как на схеме
сложность кодинга
Примеры
Иллюстрации в асинхронном Python и Django ORM
Поиграй в песочнице
сложность кодинга
Примеры
Сначала напиши код в одном Repl.it, затем перенеси в основной репозиторий
Снижает сложность погружения в незнакомый код. Ученик начинает с чистого листа, сам пишет кусочки кода и разбирается что к чему
Интеграция нового кода в старую базу откладывается на потом
Вынеси цикл наружу
сложность кодинга
Примеры
Сначала распарси одну карточку товара, потом сделаешь цикл и обработаешь список целиком
Упрощает отладку
Заметно уменьшает список "Что понадобится"
Карточки составления шагов
By Евгений Евсеев