Terima kasih telah mengirimkan pertanyaan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Terima kasih telah mengirimkan pemesanan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Kerangka Materi
Pengenalan Lua
- Sejarah singkat
- Tujuan, fitur, dan bukan tujuan Lua
- Sumber dokumen dan tutorial Lua
- Memasang interpretasi Lua
- Mengatur dan menggunakan LuaRocks
Sintaks dan semantik dasar
- Identifikasi
- Komentar, komentar blok
- Variabel global dan pengenalan ketat
- Variabel lokal
- Program berdiri sendiri, argumen program
- Unit kompilasi, potongan, ekspresi, titik koma
Tipe data dan struktur data
- Tipe dasar: nil, boolean, number, string
- Tipe objek: function, userdata, thread, table
- Referensi/objek vs. nilai dasar
- Kepentingan tabel dalam Lua
Pengenalan tabel dan keberanannya
- Tabel sebagai array asosiatif
- Tabel sebagai array numerik, urutan
Struktur kontrol dasar
- If then elseif else end
- Loop while
- Loop repeat
- Loop for sederhana
Penanganan kesalahan
- Nilai kembalian vs pengecualian
- Mengubah nilai kembalian menjadi pengecualian
- Mengubah pengecualian menjadi nilai kembalian
- Tingkat kesalahan
Program contoh
- Penilaian polinomial
- Cari lebar pertama
- Latihan tambahan
Lebih banyak tentang fungsi
- Argumen dinamis
- Pemanggilan berorientasi objek
- Penutup
- Currying
- Panggilan ekor
- Pemberian dan pengembalian ganda
- Varargs
Iterator dan ko-routin
- Loop for generik
- Iterator stateless vs stateful
- Perbedaan antara iterator dan ko-routin
Metatabel dan metametode
- Contoh set
- Metametode __tostring
- Metametode aritmatika
- Metametode __index, __newindex
- Metametode __len
Modul dan paket
- Menggunakan modul
- Membuat modul
- Mengorganisir modul menjadi paket
Tabel tingkat lanjut
- Tabel untuk antrian dan tumpukan
- Tabel yang mendeskripsikan graf
- Matriks sebagai tabel
- Daftar terhubung sebagai tabel
- Penyangga string
Metatabel melalui contoh
- Proksi
- Baca saja
- Memoisasi
- Pemrograman dinamis dengan memoisasi
- Contoh Fibonacci
Lingkungan
- Hubungan antara variabel global dan lingkungan
- Variabel bebas
- Tabel _ENV dan tabel _G
Lebih banyak tentang modul
- Pendekatan berbeda untuk membuat modul
- Modul yang mengubah perilaku
- Inisialisasi modul dan argumen
- Menggunakan lingkungan untuk mengimplementasikan modul yang aman
Iterator dan ko-routin tingkat lanjut
- Produser, konsumen, filter
- Memaket ko-routin untuk mendapatkan iterator
- Iterator stateless untuk daftar terhubung
Kontribusi pada Ekosistem
- Mengunggah paket ke MoonRocks
Paradigma fungsional dalam Lua
- Fungsi map
- Fungsi reduce / fold
Pemrograman berorientasi objek
- Pendekatan berbeda terhadap OOP
- Pendekatan berbeda terhadap pewarisan
- Contoh
Panduan tentang Lua Standard Libraries
Kompilasi
- Kompilasi
- Eval
- Hubungan dengan lingkungan
- Potongan biner
Koleksi sampah
- Tabel lemah
- Finalizer, metametode __gc
Bytecode dan mesin virtual Lua
- Mengenerate bytecode dari kode sumber
- Membaca dan menganalisis bytecode
- Tentang ringkas kode sumber mesin virtual Lua
Modul C
- Memanggil C dari Lua
- Jalur pencarian dan pemuatan modul C
Memanggil Lua dari C
- Tumpukan
- Penanganan kesalahan
- Kontinuasi
Menanganani nilai dan tipe Lua dari C
- Array
- String
- Userdata
- Metatabel
- Pemanggilan berorientasi objek
- Light userdata
Pengelolaan memori
- Alokator
- API GC
Thread dalam Lua
- Ko-routin vs thread
- Multithreading nyata dan keadaan Lua
Persyaratan
Pemahaman dengan setidaknya satu bahasa pemrograman lainnya. Pengalaman pemrograman. Secara opsional, jika Anda memiliki pemahaman dengan bahasa skrip lainnya, hal ini akan memudahkan untuk memahami Lua.
21 Jam