Путь
Изучайте Lua
Изучайте Lua с нуля в бесплатном интерактивном онлайн-курсе. Освойте переменные, условия, циклы, функции, структуры данных и организацию проектов через практические задания, реальные проекты, подсказки ИИ и сертификат по завершении.
49,057+ codders записались
Этот путь включает
Помощь ИИ при написании кода
Практические интерактивные уроки
Аудио-озвучка к каждому уроку
Тесты для проверки знаний
Бесплатный сертификат о прохождении
Программа
3 разделов214 уроков167 задачи1,071 вопросов квиза01Раздел 1
Fundamentals
The first section in Lua for absolute beginners.НАЧАТЬ ОБУЧЕНИЕВведение
3 уроков216- 01ЯзыкЗадача
- 02Hello World!ЗадачаКвизАудио
- 03КомментарииКвизАудио
Переменные и типы данных
8 уроков754- 01Что такое переменная?ЗадачаКвизАудио
- 02ЧислаЗадачаКвизАудио
- 03СтрокиЗадачаКвизАудио
- 04Булевы значенияЗадачаКвизАудио
- 05Значение 'nil'ЗадачаКвизАудио
- 06Функция type()ЗадачаКвизАудио
- 07Правила именованияКвизАудио
- 08Итоги — Профиль персонажаЗадача
Операторы 1: Арифметика и конкатенация
6 уроков636- 01Арифметические операторыЗадачаКвизАудио
- 02Оператор остатка от деленияЗадачаКвизАудио
- 03Оператор возведения в степеньЗадачаКвизАудио
- 04Конкатенация строкЗадачаКвизАудио
- 05Приоритет операторовЗадачаКвизАудио
- 06Повторение: Простые вычисленияЗадача
Операторы 2: Сравнение и логика
8 уроков651- 01Операторы равенстваЗадачаКвизАудио
- 02Операторы сравненияЗадачаКвизАудио
- 03Оператор 'and'ЗадачаКвизАудио
- 04Оператор 'or'ЗадачаКвизАудио
- 05Оператор 'not'ЗадачаКвизАудио
- 06Сокращенные вычисленияКвизАудио
- 07Значения Truthy и FalsyКвизАудио
- 08Итоги: Простая логикаЗадача
Базовый вывод
9 уроков954- 01Вывод литераловЗадачаКвизАудио
- 02Вывод переменныхЗадачаКвизАудио
- 03Вывод нескольких значенийЗадачаКвизАудио
- 04Объединение строк и переменныхЗадачаКвизАудио
- 05Функция tostring()ЗадачаКвизАудио
- 06ВводЗадачаКвизАудио
- 07Приведение типовЗадачаКвизАудио
- 08Повторение — Отчет о состоянииЗадача
- 09Повторение — До 120Задача
Проект: Вывод характеристик персонажа
Проект5 уроков1- 01Приветственное сообщениеЗадача
- 02Объявление характеристик персонажаПроект
- 03Вывод основных характеристикПроект
- 04Добавление логического флагаПроект
- 05Итоговое резюмеПроект
Основы условной логики
4 уроков423- 01Оператор if-thenЗадачаКвизАудио
- 02Оператор if-then-elseЗадачаКвизАудио
- 03Оператор elseifЗадачаКвизАудио
- 04Итоги — Сундук с сокровищамиЗадача
Основы работы со строками
6 уроков638- 01string.len()ЗадачаКвизАудио
- 02string.upper и string.lowerЗадачаКвизАудио
- 03string.sub()ЗадачаКвизАудио
- 04string.rep()ЗадачаКвизАудио
- 05string.find()ЗадачаКвизАудио
- 06Повторение — Форматирование имени пользователяЗадача
Основы функций
6 уроков636- 01Объявление функцииЗадачаКвизАудио
- 02Вызов функцииЗадачаКвизАудио
- 03Функции с параметрамиЗадачаКвизАудио
- 04Функции с несколькими параметрамиЗадачаКвизАудио
- 05Оператор 'return'ЗадачаКвизАудио
- 06Повторение — Калькулятор площадиЗадача
Таблицы, часть 1: Списки
8 уроков752- 01Что такое таблица?КвизАудио
- 02Создание таблицыЗадачаКвизАудио
- 03Доступ к элементам по индексуЗадачаКвизАудио
- 04Изменение элементов по индексуЗадачаКвизАудио
- 05Оператор длины '#'ЗадачаКвизАудио
- 06table.insert()ЗадачаКвизАудио
- 07table.remove()ЗадачаКвизАудио
- 08Итоги: управление участниками группыЗадача
Таблицы 2: Словарный стиль
7 уроков648- 01Пары ключ-значениеКвизАудио
- 02Создание таблиц-словарейЗадачаКвизАудио
- 03Доступ: квадратные скобкиЗадачаКвизАудио
- 04Доступ через точечную нотациюЗадачаКвизАудио
- 05Добавление и изменение парЗадачаКвизАудио
- 06Удаление пар с помощью nilЗадачаКвизАудио
- 07Итоги: свойства элементовЗадача
Основы циклов
6 уроков636- 01Цикл whileЗадачаКвизАудио
- 02Цикл repeat-untilЗадачаКвизАудио
- 03Числовой цикл forЗадачаКвизАудио
- 04Цикл for с шагомЗадачаКвизАудио
- 05Оператор 'break'ЗадачаКвизАудио
- 06Повторение — Обратный отсчётЗадача
Проект: Простой магазин зелий
Проект6 уроков1- 01Настройка проектаЗадача
- 02Добавление зельяПроект
- 03Отображение инвентаряПроект
- 04Расчет общей стоимости запасовПроект
- 05Поиск конкретного зельяПроект
- 06Продажа зельяПроект
Область видимости переменных
5 уроков330- 01Глобальные переменныеКвизАудио
- 02Локальные переменныеЗадачаКвизАудио
- 03Зачем использовать локальные переменные?КвизАудио
- 04Область видимости и блокиЗадачаКвизАудио
- 05Повторение — Головоломка на область видимостиЗадача
Финальные испытания
3 уроков3- 01Повторение — Ход игрокаЗадача
- 02Повторение — Простая база данныхЗадача
- 03Повторение — Сумма чётных чиселЗадача
02Раздел 2
Logic & Flow
Develop problem-solving skills and create dynamic, interactive programsНАЧАТЬ ОБУЧЕНИЕПродвинутая итерация таблиц
4 уроков423- 01Итерация с помощью pairs()ЗадачаКвиз
- 02Итерация с помощью ipairs()ЗадачаКвиз
- 03pairs() против ipairs()ЗадачаКвиз
- 04Повторение — Лист персонажаЗадача
Дополнительные функции библиотеки table
5 уроков430- 01table.concat()ЗадачаКвиз
- 02Создание таблиц и unpack()ЗадачаКвиз
- 03table.sort()ЗадачаКвиз
- 04Пользовательская сортировка с помощью функцийКвиз
- 05Итоги — Таблица рекордовЗадача
Продвинутые концепции функций
6 уроков539- 01Возврат нескольких значенийКвиз
- 02Вариативные функции (...)ЗадачаКвиз
- 03Функции как объекты первого классаЗадачаКвиз
- 04Анонимные функцииЗадачаКвиз
- 05Что такое замыкание?ЗадачаКвиз
- 06Итоги — простой обработчик событийЗадача
Введение в метатаблицы
8 уроков757- 01Что такое метатаблица?Квиз
- 02setmetatable и getmetatableЗадачаКвиз
- 03Метаметод __indexЗадачаКвиз
- 04Метаметод __newindexЗадачаКвиз
- 05Метаметод __tostringЗадачаКвиз
- 06Арифметические метаметоды. Часть 1ЗадачаКвиз
- 07Арифметические метаметоды. Часть 2ЗадачаКвиз
- 08Итоги — Таблица только для чтенияЗадача
Проект: Движок текстового квеста
Проект8 уроков1- 01Настройка проекта: КомнатаЗадача
- 02Соединение комнатПроект
- 03Состояние игрокаПроект
- 04Игровой циклПроект
- 05Обработка пользовательского вводаПроект
- 06Перемещение игрокаПроект
- 07Обработка некорректных ходовПроект
- 08Отображение выходовПроект
Обработка ошибок
3 уроков216- 01Функция error()Квиз
- 02Защищенные вызовы с pcall()ЗадачаКвиз
- 03Повторение — безопасное делениеЗадача
Продвинутая работа со строками
6 уроков641- 01string.gsub() для подстановкиЗадачаКвиз
- 02Введение в строковые шаблоныЗадачаКвиз
- 03string.find()ЗадачаКвиз
- 04string.match()ЗадачаКвиз
- 05Итерация с помощью string.gmatch()ЗадачаКвиз
- 06Итоги — Парсер лог-файловЗадача
Проект: Список контактов
Проект7 уроков1- 01Настройка проектаЗадача
- 02Основной циклПроект
- 03Добавление контактаПроект
- 04Список всех контактовПроект
- 05Поиск контактаПроект
- 06Удаление контактаПроект
- 07Обработка некорректного вводаПроект
Корутины для начинающих
7 уроков638- 01Что такое корутина?Квиз
- 02coroutine create и resumeЗадачаКвиз
- 03Пауза с помощью coroutine.yield()ЗадачаКвиз
- 04resume и yieldЗадачаКвиз
- 05Проверка статуса корутиныЗадачаКвиз
- 06Итоги — Генератор чиселЗадача
- 07Итоги — Векторная математикаЗадача
03Раздел 3
Object Oriented Programming
Discover how to organize code with classes, objects, and reusable structuresНАЧАТЬ ОБУЧЕНИЕКонцепция 'self'
5 уроков532- 01Таблицы с функциямиЗадачаКвиз
- 02Явный 'self'ЗадачаКвиз
- 03Синтаксис с двоеточиемЗадачаКвиз
- 04Точка против двоеточияЗадачаКвиз
- 05Итоги — Движущаяся точкаЗадача
Паттерн прототипа класса
6 уроков641- 01Концепция прототипаЗадачаКвиз
- 02Связывание через __indexЗадачаКвиз
- 03Конструктор :new()ЗадачаКвиз
- 04Инициализация атрибутовЗадачаКвиз
- 05Независимые экземплярыЗадачаКвиз
- 06Итоги — АвтозаводЗадача
Состояние и поведение объектов
7 уроков748- 01Переменные экземпляраЗадачаКвиз
- 02ГеттерыЗадачаКвиз
- 03СеттерыЗадачаКвиз
- 04Вычисляемые свойстваЗадачаКвиз
- 05Форматирование строкЗадачаКвиз
- 06Проверка на равенствоЗадачаКвиз
- 07Повторение — Оценка студентаЗадача
Проект: Цифровой банк
Проект7 уроков1- 01Настройка проектаЗадача
- 02Метод пополненияПроект
- 03Метод снятияПроект
- 04Получение балансаПроект
- 05Информация о счетеПроект
- 06Перевод средствПроект
- 07Финальное тестирование банкаПроект
Перегрузка операторов в ООП
5 уроков531- 01Сложение объектовЗадачаКвиз
- 02Вычитание объектовЗадачаКвиз
- 03Конкатенация объектовЗадачаКвиз
- 04Сравнение объектов (<, >)ЗадачаКвиз
- 05Повторение — Математика кошелькаЗадача
Основы наследования
6 уроков643- 01Настройка наследованияЗадачаКвиз
- 02Наследование методовЗадачаКвиз
- 03Расширение конструктораЗадачаКвиз
- 04Добавление дочерних методовЗадачаКвиз
- 05Общее и уникальноеЗадачаКвиз
- 06Итоги: Иерархия фигурЗадача
Полиморфизм и переопределение
6 уроков640- 01Переопределение методовЗадачаКвиз
- 02Вызов родительских методовЗадачаКвиз
- 03Утиная типизацияЗадачаКвиз
- 04Общий интерфейсЗадачаКвиз
- 05Проверка типаЗадачаКвиз
- 06Итоги — Роли сотрудниковЗадача
Инкапсуляция
6 уроков644- 01Соглашения об именованииЗадачаКвиз
- 02Замыкания для приватностиЗадачаКвиз
- 03Доступ через замыканияЗадачаКвиз
- 04Таблицы только для чтенияЗадачаКвиз
- 05Логика валидацииЗадачаКвиз
- 06Итоги — Защищенное хранилищеЗадача
Композиция и примеси
6 уроков642- 01Отношение "Has-A"ЗадачаКвиз
- 02ДелегированиеЗадачаКвиз
- 03Простые примесиЗадачаКвиз
- 04Применение нескольких примесейЗадачаКвиз
- 05Примеси против наследованияЗадачаКвиз
- 06Итоги — Сборка роботаЗадача
Проект: Менеджер фигур
Проект7 уроков1- 01Настройка проектаЗадача
- 02Класс RectangleПроект
- 03Класс CircleПроект
- 04Метод PerimeterПроект
- 05Коллекция фигурПроект
- 06Общая площадьПроект
- 07Фильтрация фигурПроект
Паттерны проектирования (Lite)
5 уроков532- 01Фабричные функцииЗадачаКвиз
- 02Таблица SingletonЗадачаКвиз
- 03Паттерн IteratorЗадачаКвиз
- 04Observer (Слушатель)ЗадачаКвиз
- 05Итоги — Logger FactoryЗадача
Финальные испытания
4 уроков4- 01Повторение: Система инвентаряЗадача
- 02Повторение: Менеджер пользователейЗадача
- 03Повторение: Трекер счетаЗадача
- 04Итоговая проверка ООПЗадача
Почему стоит изучать Lua на Coddy
- Бесплатный онлайн-курс Lua: ничего не нужно устанавливать и настраивать. Откройте браузер и начинайте практиковаться с первого урока.
- Практические уроки Lua глубже обычного туториала: каждое понятие закрепляется заданием, где вы пишете настоящий код.
- Подсказки ИИ помогают, если вы застряли на упражнении по Lua: они объясняют следующий шаг, но не выдают решение целиком.
- Бесплатный сертификат о завершении курса Lua, который можно добавить в LinkedIn или резюме.
Частые вопросы об изучении Lua
Легко ли изучать Lua?
Да, начать изучать Lua можно даже без опыта. Coddy разбивает темы на короткие упражнения, чтобы вы поняли синтаксис, потренировали переменные, условия, циклы, функции, структуры данных и организацию проектов и постепенно набрали уверенность.
Сколько времени нужно, чтобы изучить Lua?
Основы Lua обычно можно освоить за одну-две недели ежедневной практики. Чтобы уверенно делать реальные проекты, чаще всего нужен один-три месяца регулярной работы.
Где изучать Lua онлайн бесплатно?
На Coddy есть бесплатный онлайн-курс Lua с уроками, задачами, квизами и проектами. Устанавливать ничего не нужно: все работает в браузере.
Как быстро изучить Lua?
Самый быстрый путь — писать код каждый день. В Coddy короткие объяснения сразу переходят в практику, а подсказки ИИ помогают двигаться дальше без долгих видео.
Дают ли сертификат по Lua после курса?
Да. После завершения курса Lua на Coddy вы получите бесплатный сертификат, который можно добавить в LinkedIn или резюме.
Что можно создать после изучения Lua?
После курса вы сможете создавать полезные скрипты, небольшие приложения, автоматизацию, простые игры и проекты для портфолио. Также у вас будет база для перехода к более сложным темам.