ООП в JS

Объектно-ориентированное программирование в JavaScript.

Курс

JS: Абстракция с помощью данных

PRO

Программирование не ограничивается одними лишь вычислениями. Любая нетривиальная программа, моделирует внутри себя предметную область, для которой она писалась. Например, Хекслет внутри себя оперирует понятиями Курс, Проект, Ученик и другими. Они связаны между собой определенным образом и могут взаимодействовать. На профессиональном языке это называется Абстракция. В этом курсе мы познакомимся подробнее с тем, что из себя представляет абстракция, и как ее строить.

Курс

JS: Введение в ООП

PRO

JS - мультипарадигменный язык программирования с поддержкой объектно-ориентированного программмирования. В этом курсе начинается знакомство с основными понятиями и синтаксическими конструкциями, присущими ООП. Рассматриваются инкапсуляция и сокрытие данных.

Курс

JS: Полиморфизм

PRO

Полиморфизм - пожалуй, главная отличительная черта современного ООП. В этом курсе полиморфизм разбирается со всех сторон. Здесь изучаются его основные виды и паттерны, которые обеспечивают полиморфное поведение для разных ситуаций.

Испытания

JS: Абстракция с помощью данных
Обработка ссылок
url.js Реализуйте абстракцию для работы с урлами. Она д...
JS: Введение в ООП
Поиск в двоичном дереве
Node.js Двоичное дерево поиска состоит из узлов, каждый...
JS: Введение в ООП
Построение двоичного дерева
Двоичное дерево — иерархическая структура данных, в кот...
JS: Введение в ООП
Агрегация в двоичном дереве
В данном испытании мы будем использовать двоичное дерев...
JS: Введение в ООП
Сбалансированное двоичное дерево
Особенность структуры двоичного дерева даёт хороший при...

Впечатления

Человек, который пишет код, который убивает полиморфизм — я =]

Новый курс офигителен. Я реально его люблю. Мозг по-прежнему кипит, вижу элегантные решения учителя, до которых еще сам не всегда дохожу и ругаю себя, что не смог написать так же. Но хотя бы понимаю уже почему они элегантны. Когда только начинаешь изучать, то есть какие-то пресловутые пунктики, наподобие "короткий код" или какая-то подсмотренная и заученная техника. И видя решение учителя, даешься диву почему все хвалят этот код, когда можно было вот так — быстрее и короче... А сейчас вот прям понимаю "почему"! =)

Вспоминаю, как я мучился с прошлыми курсами... кажется полиморфизм разбирался в курсе по Прототипам. И вроде бы в старых заданиях было более подробное описание (собственно благодаря которому что-то в итоге наколдовывалось), сейчас по-настоящему понимаю что делаю. А без подробного описания вся нужная инфа легко читается из тестов. По факту тесты — это как ТЗ (техническое задание). Надеюсь, дальше будут курсы и больше практики именно по составлению тестов. Ибо правильно написанное ТЗ — это ж 80% работы в любой из профессий, будь то граф дизайн, копирайтинг или программирование =)

Команде и Кириллу еще раз огромное спасибо, что стараетесь объяснять сложное просто. Раньше казалось, что курс "Введение в программирование" простой. А теперь кажется, что новые курсы намного проще все объясняют. Хотя хз, может просто на самом деле опыт пришел =}

Спасибо за курс! Получилось лучше понять абстракции, зачем они нужны и как работают на архитектуру приложений, когда текут и что это значит. Информация в теории и упражнениях даётся очень доступно и понятно.

Урок: Прототипы

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

Отличное задание, отлично поданный материал, отдельное спасибо за ссылку на книгу YDKJS.

Крутой курс, особенно понравилось задание по созданию абстракции "Деньги". Спасибо!