Opleiding: Lua Programming
In the course Lua Programming from SpiralTrain participants learn to use Lua in the development of applications.Lua Intro
The course starts with an explanation of the Lua Software system, the Lua Interpreter, the Lua Compiler and the SciTE IDE.
Lua Syntax
The Lua language syntax, the variables and data types, the difference between RValues and LValues, operators, control flow and Lua modules are also discussed.
Functions
Then defining and calling functions in Lua is treated with parameter passing, function scope and return values. Lua also supports functional programming and in this context attention is paid to functions as variables, functions as return values and closures.
Data Structures and Classes
Also part of the course program are data structures and classes and objects in Lua. Arrays, iterators and tables are discussed and the concepts of inheritance, overriding and polymorphism are explained and demonstrated.
Threads and Coroutines
Then multithreading and coroutines are on the course schedule. It is discussed how different tasks can be executed in parallel in multiple threads and how coroutines transfer control to each other with yield and resume.
Lua Data Access
Finally the course ends with the treatment of data access from Lua applications. Both accessing files and accessing relational databases are treated.
Audience Course Lua Programming
The Lua Programming course is intended for developers who want to learn the fast and interpreted script language Lua.
Prerequisites Course Lua Programming
Programming experience is required to participate in this course. Experience with object oriented and functional programming is beneficial to understanding.
Realization Training Lua Programming
The theory is discussed on the basis of presentation slides. The theory is further explained through demos. After discussing a module, there is the possibility to practice. Course times are from 9.30 to 16.30.
Certification Course Lua Programming
After successful completion of the course the participants receive an official certificate Lua Programming.
Modules
Module 1 : Lua Intro
- Lua Origins
- Relation to C
- Lua Interpreter
- Lua Compiler
- Memory Management
- String Handling
- Lua's Software System
- Installing Lua
- Interactive Mode
- SciTE IDE
- Lua Extensions
Module 2 : Language Syntax
- Lua Tokens
- Data Types
- Variables
- LValues and RValues
- Type Function
- Operators
- Control Flow
- Loops
- If Selection
- Modules
- require Statement
Module 3 : Lua Functions
- Defining Functions
- Function Scope
- Parameter Passing
- Formal Parameters
- Return Values
- Assigning Functions
- Passing Functions
- Variable Arguments
- Chunks as Functions
- Closures
- Built-In Functions
Module 4 : Data Structures
- Arrays and Indexing
- Multiple Dimensions
- Lua Iterators
- Generic For Iterator
- Stateless Iterators
- Stateful Iterators
- Lua Tables
- Table Representation
- Table Manipulation
- Sorting Tables
- Metatables
- Operation Behavior
Module 5 : Object Orientation
- Classes and Objects
- Creating Objects
- Accessing Properties
- Member Functions
- Mutable Values
- Immutable Values
- MetaMethods
- Inheritance
- Overriding Methods
- Polymorphism
- Garbage Collection
- Collector Functions
Module 6 : Threading and Coroutines
- What are Coroutines?
- Creating Coroutines
- Coroutine Functions
- yield and resume
- wrap and running
- Transferring Control
- Maintaining State
- Concurrent Tasks
- Synchronization
- Event Handling
- Event Loops
- Debugging
Module 7 : Data Access
- File I/O
- Implicit File Descriptors
- Explicit File Descriptors
- Database Access
- LuaSQL Library
- Making Connection
- Execute Function
- Inserts and Updates
- Executing Queries
- Retrieving Results
- Transactions
- SQLite and MySQL

