Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

О курсе JS: Введение в ООП

Ключевой частью любого кода являются данные, которые мы как-то получаем, обрабатываем, храним и выводим пользователю. Какие-то данные устроены просто, например, те, что представлены строками (тексты книг) или массивами (сообщения в чате), а какие-то достаточно сложно, например, информация о пользователе, которая, может включать в себя десятки и сотни свойств. Ниже пример того, чем является студент на Хекслете:

// Очень упрощенно, в реальности все сложнее
const student = {
  name: 'Petya',
  encryptedPassword: ...,
  facebookId: ...,
  payments: [/* платежная информация */],
  currentGroup: ...,
  finishedCourses: [/* список пройденных курсов */]
};

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

// Внутри себя делает шифрование и обновление user
// user меняется внутри функций
changePassword(user, 'new secret password');
addFinishedCourse(user, finishedCourse);

Другой способ — добавить в объекты методы и работать через них:

user.changePassword('new secret password');
user.addFinishedCourse(course);

Подход, в котором код представляет из себя набор объектов, взаимодействующих друг с другом, называется объектно-ориентированным программированием (ООП). Объекты в таком подходе, это не просто тип данных "объект", это сущности, которые имеют поведение, то есть методы для работы с ними.

Изучение ООП

Объектно-ориентированное программирование – большая тема, которая пронизывает всю разработку на JavaScript. Ей посвящено сразу несколько курсов, освещающих разные элементы, начиная от синтаксических конструкций, заканчивая подходами в организации кода.

Этот курс знакомит с базовыми концепциями и синтаксисом, немного затрагивает особенности JavaScript, которые сильно выделяют его среди других ООП-языков. Остальные больше посвящены принципам построения программ в ООП стиле и, наконец, внутренностям самого JS, например, прототипам.

Основные темы:

  • Объекты
  • Классы
  • Инкапсуляция
  • Сокрытие данных (Data hiding)
  • Исключения

Данные темы крайне важны даже для начинающего разработчика на JS потому, что с этими понятиями он начинает сталкиваться буквально с первых дней на новой работе. С другой стороны, требуется немало времени перед тем, как вы сможете действительно качественно использовать изучаемые подходы и техники. К теме объектно-ориентированного программирования мы вернемся в наших курсах еще не раз и углубим не только наше понимание, но и разберемся вместе с его синтаксисом, например, конструкторами и прототипами.

Как подготовиться к этому курсу

Курс рассчитан на тех, кто уже хорошо освоился с объектами и функциями в JavaScript. Если у вас есть с этим сложности, рекомендуем сначала пройти или повторить следующие курсы:


Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

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

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 5 октября
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 5 октября
профессия
от 10 080 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 5 октября
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
в разработке
дата определяется

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»