PRO курс

JS: Программирование, управляемое данными

3017 сообщений в сообществе 3329 учащихся

В течение этого курса мы будем писать собственную карточную игру и знакомиться с такими важными концепциями программирования, как пользовательские типы, динамическая диспетчеризация по типу, позволяющая писать ёмкий, универсальный код, полиморфизм, передача сообщений между сущностями и, конечно, основы важнейшей темы — объектно-ориентированного программирования. Также мы перейдем к разработке через тесты (test driven development).

Последнее обновление: 06 апреля 2020

Подготовительный курс

JS: Последовательности

Уроки курса

  • 1

    Введение

    Познакомиться с курсом и с проектом карточной игры, над которым мы будем работать в течение всего курса, по ходу знакомясь с важными концепциями программирования.
  • 2

    Игровой дизайн: карточный бой

    Продумать игровой дизайн нашей карточный игры: как работает игра, как выглядит структура программы и как устроен процесс игры. Проработать поведение программы через тесты.

    тесты

    упражнение

  • 3

    Инверсия

    Улучшить один важный аспект игры, который не позволял нам полноценно тестировать ход игры.

    тесты

    упражнение

  • 4

    Помеченные данные

    Разобрать недостатки текущей реализации нашей игры. Разобраться с понятием «помеченных данных», которое является одним из важнейших аспектов всего курса.

    тесты

    упражнение

  • 5

    Диспетчеризация по типу. Аддитивность.

    Понять, что такое аддитивные программы и как динамическая диспетчеризация поможет нам строить такие программы. Разобраться, что такое диспетчеризация в контексте программирования и типов.

    тесты

    упражнение

  • 6

    Объекты

    Познакомиться с объектами в контексте современного, общепринятого понятия объектно-ориентированного программирования. Понять, как динамическая диспетчеризация дала возможность работать с объектами в ООП.

    упражнение

  • 7

    Нативные объекты

    Рассмотреть объекты, встроенные в сам язык JavaScript, с учетом знаний об объектах, которые мы получили ранее. Разобраться с тем, как объекты определяются как константы, но при этом могут изменяться.

    тесты

    упражнение

  • 8

    Классы

    Познакомиться с классом — структурой, которая позволяет создавать объекты. Рассмотреть механизм создания новых объектов с помощью 'new'.

    тесты

    упражнение

  • 9

    Полиморфизм

    Познакомиться с понятием полиморфизма в языках программирования. Разобрать три типа полиморфизма.

    тесты

    упражнение

Автор

Аватар пользователя Kirill Mokevnin

Кирилл Мокевнин

Сооснователь и CEO образовательного проекта Хекслет. Программирую с 2007 года. За это время прошёл путь от разработчика до технического директора и управляющего отдельным подразделением (филиалом). Управлял командами, в которых больше 50 разработчиков.

  • Программирую на языках: Elixir, Clojure, JavaScript, PHP, Ruby.
  • Соорганизатор конференции Nastachku.ru.
  • Вимер.
  • Топлю за DevOps и автоматизированные тесты.

Впечатления

Спасибо за такой прекрасный курс, было очень интересно!)

Программирование, Управляемое Данными - ПУД. Пуд соли. Пока шёл по курсу, много раз хотел поднять лапы вверх и подсмотреть решение. Блин! Дошёл! Не сорвался! Теперь оборачиваюсь, а ларчик то, не так уж сложно открывался. И пуд соли оказался меньше, чем казался. Не сдавайтесь! Удачи всем! Hexlet вы класс!

После пройденной профессии PHP этот курс очень хорошо зашел. Более глубокое понимание темы ООП, чем популярное "это там, где классы и объекты"))

Потратил на задачку 1,5 часа. Никуда не заглядывал и не подглядывал, но на теорию день ушло. И когда очередной раз нажал проверить и мое решение прошло и даже похоже на решение учителя кончено радости не было предела)) Хочу дать совет, который не является истиной в последней инстанции) тем кто расстраивается и у кого опускаются руки, хотя про это много раз уже говорили но повторюсь: курс построен прекрасно все об этом говорят и все это знаю, но наш мозг так устроен, что когда мы переходим к новой теме и начинаем слушать лекцию и читать текст наш мозг сперва привыкает к новому тексту и визуализированной информации, а уже потом начинает обрабатывать смысл всего сказанного. Если взять эту конкретную тему, то я раз 15 пересмотрел видео и перечитал текст прежде чем мой мозг перестал отвлекаться на красивые кружочки и успокаивающий голос лектора(если бы он не был таким классным программистом, то был бы хорошим работником call-center))) и потом когда для мозга все это стало не в новинку, то он начинает переваривать смысл и у кого как, но у меня со скоростью асфальтоукладчика(зато сразу и без повторений) и затем задача и тема прекрасно усваивается и все спокойно решается, будьте терпеливы!

Задача намного легче, чем кажется на первый взгляд) Конечно, до решения учителя ещё далеко и есть куда стремиться) Большое спасибо за курс!)

Курс JS: Программирование, управляемое данными
продолжительность
22 часа
награда
47 баллов