Основные возможности платформы Hexlet не доступны в вашем браузере. Пожалуйста, обновитесь.

JS: Прототипы

Этот курс посвящен реализации объектно-ориентированного программирования в JavaScript — прототипам. Классы и их отсутствие, классы как функции и функции как объекты. В течение курса мы будем работать над проектом HTML Builder, библиотекой, которая конвертирует специально отформатированный текст в готовый код HTML.

Сначала рекомендуем пройти курс: JS: Коллекции

Содержание курса

  • 1

    Введение

    Цель: Познакомиться с курсом и особенностями реализации концепций объектно-ориентированного программирования в языке JavaScript. Узнать о проекте HTML Builder, над которым мы будем работать на протяжении курса.

    теория (05:16)  
  • 2

    Проект HTML Builder

    Цель: Разобрать проект, над которым мы будем работать на протяжении курса. HTML Builder будет генерировать готовый HTML-код на основе придуманного нами DSL.

    теория (14:33)   тесты   практика  
  • 3

    Абстрактное синтаксическое дерево

    Цель: Познакомиться с AST — абстрактным синтаксическим деревом, которое участвует практические в любой программе, занимающейся парсингом. Понять, как использовать идею AST для создания HTML Builder'а.

    теория (08:30)   тесты   практика  
  • 4

    Полиморфизм подтипов

    Цель: Рассмотреть полиморфизм подтипов на примере практического задания из прошлого урока.

    теория (05:35)   практика  
  • 5

    Иерархия типов

    Цель: Рассмотреть иерархию типов, базовые идеи и терминологию.

    теория (14:19)   тесты  
  • 6

    Наследование

    Цель: Разобрать то, как наследование выглядит в языке JavaScript.

    теория (05:01)   тесты   практика  
  • 7

    Функции как объекты

    Цель: Познакомиться с особенностью языка JavaScript: функции в нем являются объектами.

    теория (10:51)   тесты   практика  
  • 8

    Позднее связывание

    Цель: Рассмотреть концепцию позднего связывания, которая, наряду с передачей сообщений, является одной из двух главных идей объектно-ориентированного программирования в своей начальной формулировке.

    теория (12:38)   тесты   практика  
  • 9

    Прототипы

    Цель: Рассмотреть механизм наследования на прототипах, который используется в языке JavaScript.

    теория (12:53)   тесты   практика  
  • 10

    Цепочки прототипов

    Цель: Изучить механизм построения цепочки прототипов в JavaScript.

    теория (07:31)   тесты   практика  
  • Course completed

  • Практика после курса

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

    # Задание % завершений
    1 Вложенный доступ 85%
    2 Оборачивание функции 73%

Подробнее о курсе

Учащихся
564
Сообщений
229
Упражнений
8
Часов
7

Автор

Image

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

Со-основатель и технический директор образовательного проекта Hexlet. Со-организатор конференции Nastachku.ru. В прошлом руководил филиалом undev.ru в Ульяновске, а до этого работал в Qik (Skype). Создает инженерную культуру в компаниях и несет в массы XP, DDD и DevOps. Евангелист ментального программирования.