Kuest AI

Изучайте что угодно — бесплатно

Начать бесплатно

Изучайте Ruby в 10 раз быстрее с ИИ

Вставьте свой код Ruby или текст ошибки — Kuest спросит, что вы ожидаете от него, а затем поможет разобраться с блоками, хешами и классами, пока всё не станет понятным.

817,000+учеников уже занимаются с Kuest

тем
10
Тип языка
Динамический, объектно-ориентированный
Создатель
Yukihiro Matsumoto (1995)
Наиболее известен благодаря
Ruby on Rails

Посмотрите, как объясняет Kuest

Сначала он спрашивает, а потом объясняет — так вы думаете сами и лучше запоминаете.

Вы: Я написал doubled = [1, 2, 3].each { |n| n * 2 }, но doubled всё ещё [1, 2, 3]. Почему?
Kuest: Хороший вопрос. Как думаешь, для чего нужен each: чтобы создать новый массив или просто пройтись по всем элементам?
Вы: Я думал, он проходит по каждому элементу и меняет его.
Kuest: Он действительно обходит каждый элемент, но отбрасывает то, что возвращает блок, и возвращает исходный массив. Какой метод сохраняет результат блока для каждого элемента?
Вы: map. Значит, doubled = [1, 2, 3].map { |n| n * 2 } даст [2, 4, 6].
Kuest: Именно. Используйте each, когда нужны побочные эффекты, например puts, а map — когда нужен новый массив результатов.

each возвращает исходную коллекцию; map возвращает новый массив, построенный из значений, которые возвращает блок.

Ученики, которые всерьёз занимаются с Kuest

учеников
817,000+
стран
100+
  • С C до A по химии

    “Я перестал списывать ответы и начал по-настоящему понимать. За один семестр моя оценка по химии выросла с C до A.”

    11-й класс, Техас
  • 3 часа → 40 минут

    “Мои конспекты за секунды превращаются в тест. То, на что раньше уходил весь вечер, теперь занимает столько же, сколько одна серия.”

    10-й класс, Калифорния
  • Наконец готов к SAT

    “План точно говорил, что делать каждый день. Впервые я пришёл на экзамен спокойным.”

    12-й класс, Нью-Йорк
  • Не даёт мне пропустить ни шаг

    “Сначала раздражало, но в день теста это спасло. Я смог решить каждую задачу без него.”

    9-классник, Огайо
  • Лучше, чем мой репетитор

    “Он доступен и в полночь, терпелив и стоит меньше, чем одно занятие с моим прежним репетитором.”

    Студент 1-го курса, Флорида
  • Моя серия — уже 94 дня

    “Квесты занимают десять минут. Я делаю их в автобусе. И каким-то образом теперь уже я объясняю друзьям биологию.”

    11-классник, Джорджия
  • Испанский наконец стал понятен

    “Разговоры вслух с тьютором помогли исправить произношение быстрее, чем целый год занятий.”

    10-классник, Аризона
  • Нашёл пробелы за один вечер

    “Проверка пробелов показала, что я вообще не понимал моли. Разобрался за 15 минут.”

    11-классник, Джорджия
  • Родитель на связи: больше никаких срывов в 9 вечера

    “Мой сын получает настоящую помощь, а мне не нужно делать вид, что я помню матанализ. И я каждую неделю вижу его прогресс.”

    Родитель, Вашингтон

Методика

Как изучать Ruby с Kuest

Ruby читается почти как английский, поэтому легко решить, что вы всё понимаете, ещё до того, как сможете написать код. Быстрее всего учиться, если перед проверкой предсказывать, что вернёт строка, а затем писать небольшие методы по памяти. Короткая регулярная практика с методами Enumerable важнее долгих занятий.

  1. Вставьте код или ошибкуЧат с наставником

    Отправьте фрагмент кода или сообщение об ошибке, на котором вы застряли. Kuest спросит, что вы ожидали получить, и поможет проследить, почему вышло иначе.

  2. Сфотографируйте экран или заданиеСфотографировать

    Сделайте фото слайда, упражнения из учебника или терминала и начните разбирать именно то, что видите.

  3. Узнайте, как связаны объектыУчебная доска

    Kuest рисует классы, модули и поиск методов на учебной доске, чтобы вы увидели, какой include имеет приоритет.

  4. Предсказывайте выводКвизы

    Проходите квизы с фрагментами Ruby-кода и вопросами о том, что они возвращают, — этот навык заметно ускоряет отладку.

  5. Не забывайте методыКарточки

    Повторяйте map, select, reduce, each_with_object и другие методы с интервальными карточками, чтобы всегда выбирать нужный.

  6. Находите слабые местаПоиск пробелов

    Kuest замечает темы, в которых вы продолжаете ошибаться, например различия между блоками и procs или символами и строками, и возвращает их в повторение.

Что вы изучите

Нажмите на тему, чтобы начать изучать её сейчас.

  1. 01Переменные, строки и интерполяцияХраните значения и создавайте текст с интерполяцией, например "Hi #{name}".
  2. 02Условия и истинностьИспользуйте if, unless и case и помните: ложными считаются только nil и false.
  3. 03Массивы и хешиХраните списки и данные «ключ — значение», находите их по символам-ключам.
  4. 04Циклы и итераторыПовторяйте действия с each, times и each_with_index.
  5. 05БлокиПередавайте блоки через do...end или фигурные скобки и разбирайтесь, что означает |item|.
  6. 06Методы EnumerableПреобразуйте и фильтруйте данные с map, select, reduce и sort_by.
  7. 07МетодыОпределяйте методы с аргументами по умолчанию, именованными аргументами и неявным возвратом.
  8. 08Классы и объектыМоделируйте сущности с классами, initialize, переменными экземпляра и attr_accessor.
  9. 09Модули и примесиИспользуйте include, чтобы делиться поведением между классами, и разберитесь в поиске методов.
  10. 10Ошибки и отладкаЧитайте сообщения об ошибках Ruby, находите строку со сбоем и обрабатывайте ошибки через rescue.

Попробуйте спросить

Нажмите на вопрос — и Kuest начнёт объяснять его шаг за шагом.

Поможет подготовиться к

  • Вводные курсы программирования на Ruby
  • Буткемпы Ruby on Rails
  • Собеседования по программированию на Ruby

Месяц с Kuest стоит дешевле часа с репетитором

То же терпение, в любое время, по любому предмету. Или оставайтесь на бесплатном плане навсегда.

Репетитор

$40–80за один час

  • Запись за несколько дней
  • Один предмет за занятие
  • Занятие заканчивается через час

Kuest Plus

$10в месяц при оплате за год

  • Все предметы и экзамены на этом сайте
  • В любое время и столько, сколько нужно
  • Квизы, карточки, подкасты и пробные экзамены

Ответы на вопросы

Ваша следующая учебная сессия начинается здесь

Бесплатный план навсегда. Карта не нужна.

Начать бесплатно