Lua: Bahasa Scripting Ringan yang Berjalan di Mana Saja
Lua adalah bahasa scripting yang cepat dan dapat disematkan, digunakan dalam game engine, web server, database, dan text editor — dari framework game LOVE dan Roblox hingga Redis, Nginx via OpenResty, dan Neovim. Inti minimalnya dan C API yang bersih menjadikannya pilihan default ketika Anda membutuhkan runtime yang scriptable tanpa overhead dari stack bahasa lengkap. Track ini mencakup Lua dari prinsip dasar hingga embedding tingkat produksi dan optimasi performa, berdasarkan 40 kursus terstruktur.
Yang Akan Anda Pelajari
Anda akan memulai dengan variabel, tipe, operator, dan control flow, lalu beralih ke fitur yang membuat Lua unik: table sebagai struktur data universal untuk array, dictionary, dan object. Dari sana Anda akan bekerja melalui standard string library, pattern matching, file I/O, dan date handling. Topik menengah mencakup metatable dan metamethod, pola object-oriented dan functional programming, coroutine, closure, module, dan JSON encoding. Track terapan mencakup Lua scripting untuk game logic, unit testing dengan busted, Redis scripting, dan membangun plugin architecture. Kursus lanjutan menjangkau memory management dengan weak table, embedding Lua dalam aplikasi C, optimasi performa LuaJIT, FFI untuk memanggil library C, integrasi OpenResty/Nginx, sandboxing, konstruksi DSL, networking dengan LuaSocket, dan menulis Neovim plugin.
Jalur Pembelajaran
Empat puluh kursus mencakup A1 hingga C1. Kursus A1 dan A2 menetapkan fundamental bahasa — syntax, function, table, sequence, dan basic I/O. Kursus B1 membangun mental model khusus Lua: metatable, coroutine, pola OOP, inheritance, functional programming, dan standard library. Kursus B2 menerapkan pengetahuan tersebut dalam konteks nyata: Lua Scripting for Game Logic, Coroutine-Based Async Patterns, Lua for Redis Scripting, dan Lua Game Development with LOVE. Tier capstone C1 membahas topik tingkat expert — Embedding Lua in C Applications, LuaJIT & Performance Optimization, FFI: Calling C Libraries from Lua, Lua in Nginx (OpenResty), dan Lua Writing Neovim Plugins.
Cara Kerjanya
Setiap kursus dibagi menjadi lesson singkat yang hands-on yang Anda selesaikan di editor kode built-in dengan feedback real-time. Tutor AI tersedia kapan saja Anda mengalami kesulitan, dan track ini self-paced sehingga Anda dapat bergerak cepat melalui topik yang sudah Anda ketahui dan melambat untuk bagian — seperti metatable atau coroutine — yang memberikan reward untuk perhatian cermat.