План на курса

Введение в Lua

  • Няколко думи за историята
  • Цели, особености и не-цели на Lua
  • Ресурси на документация и уроци за Lua
  • Инсталиране на интерпретатора на Lua
  • Настройка и използване на LuaRocks

Основна синтаксис и семантика

  • Идентификатори
  • Коментари, блокови коментари
  • Глобални променливи и налагане на строгост
  • Локални променливи
  • Самостоятелни програми, аргументи на програмата
  • Единици за компилация, фрагменти, изрази, точки-запетая

Типове данни и структури на данни

  • Основни типове: nil, булев, число, низ
  • Обектни типове: функция, userdata, нишка, маса
  • Референции/обекти срещу основни стойности
  • Значението на масите в Lua

Введение в масите и тяхната многозначащиност

  • Маси като асоциативен масив
  • Маси като числови масиви, последователности

Основни структури за управление

  • The if then elseif else end
  • The while цикъл
  • The repeat цикъл
  • The прост for цикъл

Обработка на грешки

  • Стойности за връщане срещу изключения
  • Преобразуване на стойност за връщане в изключение
  • Преобразуване на изключение в стойност за връщане
  • Нива на грешки

Примерни програми

  • Оценка на многочлен
  • Търсене с широка търсене
  • Дополнителни упражнения

Повече за функции

  • Именувани аргументи
  • Обекто-ориентирани повикви
  • Затваряне
  • Кюринг
  • Опашкови повикви
  • Множествено присвояване и връщане
  • Varargs

Итератори и ко-рутини

  • The generic for цикъл
  • Итератори без състояние срещу итератори със състояние
  • Разлики между итератори и ко-рутини

Метотабли и метометоди

  • The set пример
  • Метометодът __tostring
  • Аритметични метометоди
  • Метометодите __index, __newindex
  • Метометодът __len

Модули и пакети

  • Използване на модули
  • Създаване на модули
  • Организиране на модули в пакети

Обекто-ориентирано програмиране

  • Основните елементи на OOP в Lua
  • Примери

Обсъждане на по-напреднали особености на езика

  • Слаби маси
  • Финализатори
  • Компилация, eval, зареждане

Изисквания

Познаване на поне още един език за програмиране. Programming опит. По желание, ако сте запознати с други скриптови езици, това ще улесни разбирането на Lua.

 14 часа

Брой участници


Цена за участник

Предстоящи Курсове

Свързани Kатегории