Что такое компьютер на самом деле? Понимает ли он языки программирования? Как писать код и свои программы? Этот курс посвящен ответам на эти и другие интересные и, иногда, странные вопросы. Мы изучим природу компьютеров и кода, и рассмотрим важные фундаментальные концепции, которые помогли родиться современным машинам, мобильным телефонам, интернету... почти всему, с чем мы имеем дело каждый день!
Чему вы научитесь:
- Использовать основные языковые конструкции (условия, циклы, функции и другие)
- Разделять код на модули для повторного использования и отсутствия конфликта имён
- Понимать ключевые концепции, такие как чистота и детерминированность, для написания хорошего кода
Уроки курса
-
1
Что такое компьютер?
Спросить и попробовать ответить на несколько простых, но важных вопросов: Что такое компьютер? Умный ли он? Говорит ли он на языке программирования? -
2
Человеческие и компьютерные языки
Разобраться, чем является язык программирования. Решить, с какого языка начинать обучение, и почему. -
3
Первая программа
Разобраться с тем, как работает среда разработки Хекслет и написать свою первую программу на JavaScript. -
4
Как эффективно учиться на Хекслете
Узнать и понять, как работает система обучения на Хекслете -
5
Математика и константы
Изучить как считать и записывать ответы в программах на JavaScript. Познакомиться с константами. -
6
Функции и ящики
Знакомимся с функциями — строительными блоками программ. Учимся создавать их и запускать. -
7
Условия и принятия решений
Познакомиться с условиями и алгеброй логики, механизмом, позволяющим программам принимать решения на основе информации. -
8
О, нет, ошибки! И как с ними справляться
Познакомиться с типами ошибок и способами решения проблем. -
10
Итеративный процесс
Разобраться с другим видом применения рекурсии для вычислений с конечным размером состояний. -
11
Переменные, декларативное и императивное программирование
Познакомиться с переменными, циклами и изменяемыми данными. Понять важное отличие декларативного программирования от императивного. -
12
Строки и работа с символами
Научиться работать со строками — последовательностями символов. -
13
Цикл for и изменение переменных
Узнать о быстром способе изменения переменных и цикле for. -
14
Тесты и автоматическая проверка кода
Познакомиться с важной идеей — автоматическим тестированием кода. Пишем свои первые простые тесты. -
16
Выражения и инструкции
Понять, чем выражения отличаются от инструкций, и почему важно видеть в коде выражения и инструкции, а не просто наборы команд. -
19
Чистые функции
Рассмотреть детерминированность функций, побочные эффекты и чистые функции. -
20
Что дальше?
Узнать о том, что будет изучаться дальше, в какой последовательности и почему.
Испытания
Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки.
# | Задание | % завершений |
---|---|---|
1 | Переворот числа | 91% |
2 | Форматированное время | 94% |
3 | Функция Аккермана | 94% |
4 | Преобразование DNA в RNA | 95% |
5 | Сумма квадратов | 96% |
6 | Идеальные числа | 95% |
7 | Разница углов | 91% |
8 | Счастливые числа | 92% |
9 | Счастливый билет | 96% |
10 | Степень тройки | 94% |
11 | Без двух нулей | 57% |
12 | Найди Fizz и Buzz | 97% |
13 | Фасад | 92% |
14 | Инвертированный регистр | 95% |
15 | Переворот строки | 93% |
16 | Сбалансированы ли скобки? | 90% |
Автор
Программист, ранее — преподаватель в международном ИТ-университете (г. Алматы), разработчик (Ericsson Canada, Macadamian). Сооснователь Хекслета.
Впечатления
Пылающий гусь на динозавре повеселил))
И вообще спасибо отдельное за мульт всей серии), подача очень помогает восприятию и разбавляет мозголомные задачки)). Уже сроднилась с этим героем, регулярно чешущим затылок в недоумении) и по праву чувствующим себя пещерным человеком), но стойко движущимся дальше.
Получила истинное удовольствие, делая ошибки, которые не нужно искать и исправлять! А за подачу материала - отдельное спасибо!
Боюсь, как бы не оффтоп, но очень хотелось поделиться. Пишу на эмоциях :D
Очень клевое задание, которое меня затянуло надолго с первых строк, когда я решил перевернуть наизнанку методику подсчета прописных букв (а именно через вычитание из длины строки). Думал, > ну а чем хуже. В итоге промучавшись с час времени, перебирая разные варианты источника несостыковок, хорошо так обмозговал тему, написал в консоли с полтора десятка функций bigLettersCount , уже покрыв логами функцию и, подружившись с интерполяцией, отыскал своего дьявола, мирно таящегося в мелочах :)
1 год как работаю в веб студии) И смех и грех, в общем :) Прикладываю (не знаю зачем) ревью: https://ru.hexlet.io/code_reviews/300884
Спасибо большое за курс! Для новичка самое то, так как были случаи, когда начинаешь изучение ЯП на других платформах, то курс оказывается не совсем для начинающих и задания слишком сложные для понимания, что вследствие я забрасывала курс :( Здесь всё супер и задания хорошие для закрепления материала и само изложение темы лекции на видео очень порадовало и улыбнуло :)Спасибо!
https://ru.hexlet.io/code_reviews/ пока писала до меня дошло, почему можно не писать else в конце, давно хотела сказать спасибо ребятам работающим над Hexlet и Code Basics, вы такие молодцы, спасибо вам огромное за ваш труд.