PRO курс

JS: Составные данные

3354 сообщения в сообществе 5352 учащихся

Следующий шаг после освоения основ программирования это изучение идеи составных данных. Этот курс посвящён изучению концепций, позволяющих из простых типов данных составлять более сложные данные, необходимые для решения конкретной задачи и для реализации конкретной программы. На примере разработки простой графической библиотеки мы изучим как «подняться» от уровня простых чисел до уровня двумерных объектов и рисунков.

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

JS: Функции

Уроки курса

  • 1

    Введение

    Познакомиться с курсом, его целями и структурой. Рассмотреть понятие «составные данные» и понять смысл их создания и использования.
  • 2

    Точки

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

    тесты

    упражнение

  • 3

    Пары

    Разобраться с тем, как устроены и реализованы точки в нашей графической библиотеке.

    тесты

    упражнение

  • 4

    Моделирование

    Познакомиться с понятием «Моделирование предметной области».

    тесты

    упражнение

  • 5

    Барьеры абстракции

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

    тесты

    упражнение

  • 6

    Реализация пар

    Написать собственную реализацию пар на языке JavaScript.

    тесты

    упражнение

  • 7

    Рациональные числа

    Рассмотреть рациональные числа как новый пример абстракции на основе пар чисел.

    тесты

    упражнение

Испытания

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

# Задание % завершений
1 Пары без функций 82%
2 Тройка 95%
3 Пары на строках 91%

Автор

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

Сооснователь и технический директор образовательного проекта Hexlet. Программирует с 2007 года. За это время прошел путь от разработчика до технического директора и управляющего отдельным подразделением (филиалом). Управлял командами, в которых больше 50 разработчиков. Программирует на языках: elixir, clojure, javascript, php, ruby. Со-организатор конференции nastachku.ru. Вимер. Топит за DevOps и автоматизированные тесты.

Впечатления

Спасибо разработчикам. Ваше желание научить нас правильно думать (абстрагироваться), помогло теперь без проблем выполнить это задание))

Даже не сомневался, что у учителя функция containsTheOrigin будет решена в несколько строк, респект учителям, которые учат, смотря на сложные вещи, видеть простые решения!😜

Хорошее задание, с подковыркой. Чисто математически, насколько я помню, если точка лежит на границе какой-то замкнутой фигуры она считается принадлежащей этой фигуре. А здесь сразу не обратил внимание, что написано (не лежит на границе прямоугольника, а находится внутри) и обложил console.log-ами весь код, пока не допер, что надо добавить на все точки прямоугольника проверку типа quadrant(getPointA(rect)) !== undefined. Всем внимания :)

Когда привык, что онлайн курсы тебя пытаются научить фреймворку, но не основам - очень тяжко даются эти основы, но когда понимаешь, как и что работает - кайф. :)

После этого задания я окончательно осознал, что такое абстракции и сущности.

Спасибо, было интересно!

продолжительность
20 часов
награда
56 баллов
Получить доступ к курсу