Yolculuk
Lua Öğren
Ücretsiz, interaktif online bir Lua kursu. Her derste Lua yazıyorsun — söz dizimi, tablolar, fonksiyonlar, metatable'lar ve Roblox scripting ile oyun motoru çalışmaları için gereken temeller. Bir şey nil dönerse AI ipuçları yardıma koşar, kursu bitirince de ücretsiz bir sertifika alırsın.
52,312+ codders kayıtlı
- Başlangıç dostu
Yapay zeka destekli kodlama yardımı
Uygulamalı interaktif dersler
Her derste sesli anlatım
Bilgini sınamak için testler
Ücretsiz tamamlama sertifikası
Müfredat
Bölüm 1
Fundamentals
Bölüme başlaBaşlaGenişletDaraltThe first section in Lua for absolute beginners.Giriş
3 ders216- 01DilGörev
- 02Merhaba Dünya!GörevQuizSes
- 03YorumlarQuizSes
Değişkenler ve Veri Tipleri
8 ders754- 01Değişken Nedir?GörevQuizSes
- 02SayılarGörevQuizSes
- 03StringlerGörevQuizSes
- 04BooleanlarGörevQuizSes
- 05'nil' DeğeriGörevQuizSes
- 06type() FonksiyonuGörevQuizSes
- 07İsimlendirme KurallarıQuizSes
- 08Özet - Karakter ProfiliGörev
Operatörler 1 Aritmetik ve Birleştirme
6 ders636- 01Aritmetik OperatörlerGörevQuizSes
- 02Mod Alma OperatörüGörevQuizSes
- 03Üs Alma OperatörüGörevQuizSes
- 04String BirleştirmeGörevQuizSes
- 05Operatör ÖnceliğiGörevQuizSes
- 06Özet - Basit HesaplamalarGörev
Operatörler 2 İlişkisel ve Mantıksal
8 ders651- 01Eşitlik OperatörleriGörevQuizSes
- 02İlişkisel OperatörlerGörevQuizSes
- 03'and' OperatörüGörevQuizSes
- 04'or' OperatörüGörevQuizSes
- 05'not' OperatörüGörevQuizSes
- 06Kısa Devre DeğerlendirmesiQuizSes
- 07Truthy ve Falsy DeğerlerQuizSes
- 08Özet - Basit MantıkGörev
Temel Çıktı
9 ders954- 01Sabitleri YazdırmaGörevQuizSes
- 02Değişkenleri YazdırmaGörevQuizSes
- 03Birden Fazla Değer YazdırmaGörevQuizSes
- 04Metinleri ve Değişkenleri BirleştirmeGörevQuizSes
- 05tostring() FonksiyonuGörevQuizSes
- 06GirdiGörevQuizSes
- 07Tip DönüşümüGörevQuizSes
- 08Özet - Durum RaporuGörev
- 09Özet - 120'ye KadarGörev
Proje: Karakter İstatistiklerini Görüntüleme
Proje5 ders1- 01Hoş Geldiniz MesajıGörev
- 02Karakter İstatistiklerini TanımlamaProje
- 03Temel İstatistikleri GörüntülemeProje
- 04Bir Boolean Bayrağı EklemeProje
- 05Final ÖzetiProje
Temel Koşullu Mantık
4 ders423- 01if-then İfadesiGörevQuizSes
- 02if-then-else İfadesiGörevQuizSes
- 03elseif İfadesiGörevQuizSes
- 04Özet - Hazine SandığıGörev
String Manipülasyonu Temelleri
6 ders638- 01string.len()GörevQuizSes
- 02string.upper & string.lowerGörevQuizSes
- 03string.sub()GörevQuizSes
- 04string.rep()GörevQuizSes
- 05string.find()GörevQuizSes
- 06Özet - Kullanıcı Adı BiçimlendirmeGörev
Fonksiyon Temelleri
6 ders636- 01Fonksiyon TanımlamaGörevQuizSes
- 02Fonksiyon ÇağırmaGörevQuizSes
- 03Parametreli FonksiyonlarGörevQuizSes
- 04Çoklu Parametreli FonksiyonlarGörevQuizSes
- 05'return' İfadesiGörevQuizSes
- 06Özet - Alan HesaplayıcıGörev
Tablolar Bölüm 1: Liste Stili
8 ders752- 01Tablo Nedir?QuizSes
- 02Tablo OluşturmaGörevQuizSes
- 03İndeks ile Elemanlara ErişmeGörevQuizSes
- 04İndeks ile Elemanları DeğiştirmeGörevQuizSes
- 05Uzunluk Operatörü '#'GörevQuizSes
- 06table.insert()GörevQuizSes
- 07table.remove()GörevQuizSes
- 08Özet - Parti Üyelerini YönetmeGörev
Tablolar 2: Sözlük Yapısı
7 ders648- 01Anahtar-Değer ÇiftleriQuizSes
- 02Sözlük Yapısında Tablolar OluşturmaGörevQuizSes
- 03Erişim - Köşeli Parantez NotasyonuGörevQuizSes
- 04Nokta Notasyonu ile ErişimGörevQuizSes
- 05Çift Ekleme ve DüzenlemeGörevQuizSes
- 06nil ile Çiftleri KaldırmaGörevQuizSes
- 07Özet - Öğe ÖzellikleriGörev
Döngü Temelleri
6 ders636- 01while DöngüsüGörevQuizSes
- 02repeat-until DöngüsüGörevQuizSes
- 03Sayısal for DöngüsüGörevQuizSes
- 04Adımlı for DöngüsüGörevQuizSes
- 05'break' İfadesiGörevQuizSes
- 06Özet - Geri SayımGörev
Proje: Basit İksir Dükkanı
Proje6 ders1- 01Proje KurulumuGörev
- 02İksir EklemeProje
- 03Envanteri GörüntülemeProje
- 04Toplam Stok Değerini HesaplamaProje
- 05Belirli Bir İksiri BulmaProje
- 06İksir SatmaProje
Değişken Kapsamı
5 ders330- 01Global DeğişkenlerQuizSes
- 02Yerel DeğişkenlerGörevQuizSes
- 03Neden Yerel Değişken Kullanılır?QuizSes
- 04Kapsam ve BloklarGörevQuizSes
- 05Özet - Kapsam BulmacasıGörev
Son Meydan Okumalar
3 ders3- 01Özet - Oyuncu SırasıGörev
- 02Özet - Basit VeritabanıGörev
- 03Özet - Çift Sayıların ToplamıGörev
Bölüm 2
Logic & Flow
Bölüme başlaBaşlaGenişletDaraltDevelop problem-solving skills and create dynamic, interactive programsİleri Düzey Tablo Yineleme
4 ders423- 01pairs() ile YinelemeGörevQuiz
- 02ipairs() ile YinelemeGörevQuiz
- 03pairs() vs. ipairs()GörevQuiz
- 04Özet - Karakter SayfasıGörev
Daha Fazla Tablo Kütüphanesi Fonksiyonu
5 ders430- 01table.concat()GörevQuiz
- 02Tablo Oluşturma ve unpack()GörevQuiz
- 03table.sort()GörevQuiz
- 04Fonksiyonlar ile Özel SıralamaQuiz
- 05Özet - Yüksek Skor TablosuGörev
İleri Düzey Fonksiyon Kavramları
6 ders539- 01Birden Fazla Değer DöndürmeQuiz
- 02Variadic Fonksiyonlar (...)GörevQuiz
- 03Birinci Sınıf Değer Olarak FonksiyonlarGörevQuiz
- 04Anonim FonksiyonlarGörevQuiz
- 05Closure Nedir?GörevQuiz
- 06Özet - Basit Event HandlerGörev
Metatable'lara Giriş
8 ders757- 01Metatable Nedir?Quiz
- 02setmetatable & getmetatableGörevQuiz
- 03__index MetametoduGörevQuiz
- 04__newindex MetametoduGörevQuiz
- 05__tostring MetametoduGörevQuiz
- 06Aritmetik Metametotlar Bölüm 1GörevQuiz
- 07Aritmetik Metametotlar Bölüm 2GörevQuiz
- 08Özet - Salt Okunur TabloGörev
Proje: Metin Tabanlı Macera Motoru
Proje8 ders1- 01Proje Kurulumu: OdaGörev
- 02Odaları BağlamaProje
- 03Oyuncu DurumuProje
- 04Oyun DöngüsüProje
- 05Kullanıcı Girdisini İşlemeProje
- 06Oyuncuyu Hareket EttirmeProje
- 07Geçersiz Hamleleri Ele AlmaProje
- 08Çıkışları GörüntülemeProje
Hata Yönetimi
3 ders216- 01error() FonksiyonuQuiz
- 02pcall() ile Korumalı ÇağrılarGörevQuiz
- 03Özet - Güvenli BölmeGörev
İleri Düzey String Manipülasyonu
6 ders641- 01Yer Değiştirme için string.gsub()GörevQuiz
- 02String Desenlerine GirişGörevQuiz
- 03string.find()GörevQuiz
- 04string.match()GörevQuiz
- 05string.gmatch() ile YinelemeGörevQuiz
- 06Özet - Log Dosyası AyrıştırıcıGörev
Proje: Kişi Listesi
Proje7 ders1- 01Proje KurulumuGörev
- 02Ana DöngüProje
- 03Kişi EklemeProje
- 04Tüm Kişileri ListelemeProje
- 05Kişi AramaProje
- 06Kişi SilmeProje
- 07Geçersiz Girişleri YönetmeProje
Yeni Başlayanlar İçin Coroutine'ler
7 ders638- 01Coroutine Nedir?Quiz
- 02coroutine create ve resumeGörevQuiz
- 03coroutine.yield() ile DuraklatmaGörevQuiz
- 04resume ve yieldGörevQuiz
- 05Coroutine Durumunu Kontrol EtmeGörevQuiz
- 06Özet - Sayı ÜreticiGörev
- 07Özet - Vektör MatematiğiGörev
Bölüm 3
Object Oriented Programming
Bölüme başlaBaşlaGenişletDaraltDiscover how to organize code with classes, objects, and reusable structures'Self' Kavramı
5 ders532- 01Fonksiyonlu TablolarGörevQuiz
- 02Açık 'self'GörevQuiz
- 03İki Nokta SözdizimiGörevQuiz
- 04Nokta vs İki NoktaGörevQuiz
- 05Özet - Hareket Eden NoktaGörev
Sınıf Prototip Kalıbı
6 ders641- 01Prototip KavramıGörevQuiz
- 02__index ile BağlamaGörevQuiz
- 03:new() KurucusuGörevQuiz
- 04Öznitelikleri BaşlatmaGörevQuiz
- 05Bağımsız ÖrneklerGörevQuiz
- 06Özet - Araba FabrikasıGörev
Nesne Durumu ve Davranışı
7 ders748- 01Örnek DeğişkenleriGörevQuiz
- 02Getter MetotlarıGörevQuiz
- 03Setter MetotlarıGörevQuiz
- 04Hesaplanmış ÖzelliklerGörevQuiz
- 05String BiçimlendirmeGörevQuiz
- 06Eşitlik KontrolleriGörevQuiz
- 07Özet - Öğrenci NotuGörev
Proje: Dijital Banka
Proje7 ders1- 01Proje KurulumuGörev
- 02Para Yatırma MetoduProje
- 03Para Çekme MetoduProje
- 04Bakiye SorgulamaProje
- 05Hesap BilgileriProje
- 06Para TransferiProje
- 07Final Banka TestiProje
OOP'de Operatör Aşırı Yükleme
5 ders531- 01Nesneleri ToplamaGörevQuiz
- 02Nesneleri ÇıkarmaGörevQuiz
- 03Nesneleri BirleştirmeGörevQuiz
- 04Nesneleri Karşılaştırma (<, >)GörevQuiz
- 05Özet - Cüzdan MatematiğiGörev
Kalıtımın Temelleri
6 ders643- 01Kalıtım KurulumuGörevQuiz
- 02Metot KalıtımıGörevQuiz
- 03Constructor'ı GenişletmeGörevQuiz
- 04Alt Sınıf Metotları EklemeGörevQuiz
- 05Paylaşılan ve BenzersizGörevQuiz
- 06Özet - Şekil HiyerarşisiGörev
Çok Biçimlilik ve Geçersiz Kılma
6 ders640- 01Metotları Geçersiz KılmaGörevQuiz
- 02Üst Sınıf Metotlarını ÇağırmaGörevQuiz
- 03Duck TypingGörevQuiz
- 04Ortak ArayüzGörevQuiz
- 05Tür KontrolüGörevQuiz
- 06Özet - Çalışan RolleriGörev
Kapsülleme
6 ders644- 01Adlandırma KurallarıGörevQuiz
- 02Gizlilik için Closure'larGörevQuiz
- 03Closure'lar Aracılığıyla ErişimGörevQuiz
- 04Salt Okunur TablolarGörevQuiz
- 05Doğrulama MantığıGörevQuiz
- 06Özet - Güvenli KasaGörev
Kompozisyon ve Mixin'ler
6 ders642- 01Has-A İlişkisiGörevQuiz
- 02DelegasyonGörevQuiz
- 03Basit Mixin'lerGörevQuiz
- 04Birden Fazla Mixin UygulamaGörevQuiz
- 05Mixin'ler ve KalıtımGörevQuiz
- 06Özet - Robot BirleştirmeGörev
Proje: Şekil Yöneticisi
Proje7 ders1- 01Proje KurulumuGörev
- 02Dikdörtgen SınıfıProje
- 03Daire SınıfıProje
- 04Çevre MetoduProje
- 05Şekil KoleksiyonuProje
- 06Toplam AlanProje
- 07Şekilleri FiltreleProje
Tasarım Kalıpları (Lite)
5 ders532- 01Fabrika FonksiyonlarıGörevQuiz
- 02Singleton TablosuGörevQuiz
- 03Iterator KalıbıGörevQuiz
- 04Observer (Dinleyici)GörevQuiz
- 05Özet - Logger FabrikasıGörev
Son Görevler
4 ders4- 01Özet - Envanter SistemiGörev
- 02Özet - Kullanıcı YöneticisiGörev
- 03Özet - Skor TakipçisiGörev
- 04Final OOP KontrolüGörev
Neden Coddy ile Lua öğrenmelisin
- Tarayıcında gerçek Lua kodu çalıştır. Kurulacak bir Lua interpreter yok, toolchain ayarı yok. Her ders Lua scriptini sunucuda çalıştırır ve çıktıyı anında gösterir.
- Lua'nın gerçekte nasıl kullanıldığı: değişkenler, kontrol akışı, fonksiyonlar, tablolar (Lua'nın tek gerçek veri yapısı), string işlemleri, metatables ve OOP kalıpları, hata yönetimi. Roblox, Love2D ya da gömülü scripting için ihtiyacın olan Lua temelleri.
- Yapay zeka ipuçları, Lua scriptlerini debug etmene ve hataları okumana yardımcı olur — cevabı önüne sermeden; böylece nil indexing ve 1'den başlayan diziler gibi klasik tökezlemeler birer öğrenme anına dönüşür.
- Kursu bitirdiğinde ücretsiz Lua sertifikası. Geliştirdiğin Roblox oyunları, modlar veya gömülü scripting projelerinin yanında inandırıcı bir referans.
Lua öğrenme hakkında sık sorulan sorular
Lua ne için kullanılır?
Lua, çoğunlukla daha büyük uygulamaların içine gömülü bir betik dili olarak kullanılır; özellikle de oyun motorlarında. Roblox scripting (Luau, Roblox'a özgü bir Lua lehçesidir), Love2D, World of Warcraft eklentileri, Defold ve Garry's Mod hep Lua kullanır. Oyunların dışında ise Lua; yapılandırma, otomasyon ve gömülü sistemlerde de tercih edilir.
Lua öğrenmesi kolay mı?
Lua, programlama dillerinin daha küçük ve sade olanlarından biri — tüm referans kılavuzu kısa bir PDF'e sığıyor ve esas olarak tek bir veri yapısı var (table). Yeni başlayanların çoğu ilk çalışan Lua programını ilk bir saat içinde yazıyor. Daha çetrefilli kısımlar (metatables, closures, coroutines) sonradan ve kademeli olarak geliyor.
Roblox için Lua öğrenmeli miyim?
Evet. Lua (özellikle Roblox'un kullandığı Luau lehçesi), Roblox oyunları için tek scripting dilidir. Lua kursu, Luau'nun temelini oluşturan dilin aynısını kapsıyor (değişkenler, tablolar, fonksiyonlar, metatables, OOP kalıpları) — yani kursu bitirdiğinizde Roblox scripting konusunda ciddi bir başlangıç yapmış oluyorsunuz.
Lua öğrenmek ne kadar sürer?
Lua'nun temelleri — değişkenler, koşullar, döngüler, fonksiyonlar, tablolar — günlük pratikle bir-iki haftada oturuyor. metatables, closures ve Lua'da OOP kalıplarına alışmak genelde iki-dört hafta daha alıyor. Oradan sonra Lua'yı Roblox veya başka bir oyun motoru içinde kullanmak, dilin üstüne binen ayrı bir öğrenme süreci.
Lua'yı online olarak ücretsiz öğrenebilir miyim?
Evet. İnteraktif Lua kursu ücretsiz — dersler, kodlama alıştırmaları, quizler ve bir sertifika. Lua sunucu tarafında çalışıyor, yani kod yazmaya başlamak için Lua'yı veya herhangi bir oyun motorunu bilgisayarına kurmana gerek yok.
Lua kursunu bitirince sertifika alıyor muyum?
Evet. Lua kursunu bitirdiğinizde, özgeçmişinize ekleyebileceğiniz veya geliştirdiğiniz Roblox oyunları, modlar ya da scripting projelerinin yanında LinkedIn'de paylaşabileceğiniz ücretsiz bir tamamlama sertifikası alırsınız.