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

Введение в программирование

Что такое компьютер на самом деле? Понимает ли он языки программирования? Как писать код и свои программы? Этот курс посвящен ответам на эти и другие интересные и, иногда, странные вопросы. Мы изучим природу компьютеров и кода, и рассмотрим важные фундаментальные концепции, которые помогли родиться современным машинам, мобильным телефонам, интернету... почти всему, с чем мы имеем дело каждый день!

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

  • 1

    Что такое компьютер?

    Цель: Спросить и попробовать ответить на несколько простых, но важных вопросов: Что такое компьютер? Умный ли он? Говорит ли он на языке программирования?

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

    Человеческие и компьютерные языки

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

    теория (05:37)  
  • 3

    Первая программа

    Цель: Разобраться с тем, как работает среда разработки Хекслет и написать свою первую программу на JavaScript.

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

    Математика и константы

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

    теория (04:29)   тесты   практика  
  • 5

    Функции и ящики

    Цель: Знакомимся с функциями — строительными блоками программ. Учимся создавать их и запускать.

    теория (04:56)   тесты   практика  
  • 6

    Условия и принятия решений

    Цель: Познакомиться с условиями и алгеброй логики, механизмом, позволяющим программам принимать решения на основе информации.

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

    О, нет, ошибки! И как с ними справляться

    Цель: Познакомиться с типами ошибок и способами решения проблем.

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

    Рекурсия

    Цель: Понять в одной из самых важных и интересных базовых концепций — рекурсии и рекурсивных вызовах.

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

    Итеративный процесс

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

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

    Переменные, декларативное и императивное программирование

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

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

    Строки и работа с символами

    Цель: Научиться работать со строками — последовательностями символов.

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

    Цикл for и изменение переменных

    Цель: Узнать о быстром способе изменения переменных и цикле for.

    теория (02:36)   тесты   практика  
  • 13

    Тесты и автоматическая проверка кода

    Цель: Познакомиться с важной идеей — автоматическим тестированием кода. Пишем свои первые простые тесты.

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

    Модули

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

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

    Выражения и инструкции

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

    теория (04:23)   тесты   практика  
  • 16

    Окружение

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

    теория (07:35)   тесты   практика  
  • 17

    Типизация

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

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

    Чистые функции

    Цель: Рассмотреть детерминированность функций, побочные эффекты и чистые функции.

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

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

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

    # Задание % завершений
    1 Сумма квадратов 91%
    2 Идеальные числа 89%
    3 Разница углов 92%

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

Учащихся
2196
Сообщений
774
Упражнений
16
Часов
12