KabaLang Kullanıcı Kılavuzu
Dili hiç bilmeyen biri için, sıfırdan. Buradaki sayfalar sırayla okunacak biçimde yazılmıştır; sonunda konsol, pencereli, servis ve web uygulaması yazabiliyor olacaksınız.
Buradaki her kod örneği gerçekten derlenir.
cekirdek/test_belge_ornekleri.pybu dizindeki bütün örnekleri derler, çalıştırılabilir olanları çalıştırır ve çıkış kodunu denetler. "Belgede yazıyor ama çalışmıyor" durumunda test düşer. Hata örnekleri (hataetiketli bloklar) ise derlenmediği için geçer — yani derleyici o kusuru yakalamayı bırakırsa da test düşer.
Öğrenme sırası
| # | Sayfa | Ne öğretir |
|---|---|---|
| 1 | Kurulum ve ilk program | gerekenler · ilk program · kabalang komutları |
| 2 | Temel sözdizimi | değişken · tür · işleç · koşul · döngü · fonksiyon |
| 3 | Metin ve Türkçe kuralları | metin metotları · Türkçe büyük/küçük harf · sıralama |
| 4 | Liste ve sözlük | koleksiyonlar ve üzerlerinde gezmek |
| 5 | Yapı ve sınıf | yapi · sinif · kur/self · sayilabilir |
| 6 | Hata yönetimi | sonuc<T,E> · belki<T> · ? · dene/yakala |
| 7 | Eşzamanlılık | birlikte · baslat · kanal · arkada_calistir |
| 8 | Standart kütüphane turu | sistem · dosya · zaman · json · kripto · günlük… |
| 9 | Konsol uygulaması | argüman ayrıştırma · girdi okuma · çıkış kodu |
| 10 | Arayüz (GUI) uygulaması | pencere · bileşenler · olaylar · yineleyici · ikiz .ui |
| 11 | Servis uygulaması | servis blokları · systemd birimi · günlük |
| 12 | Web uygulaması | HTTP sunucusu · yollar · JSON · XSS kaçırma |
| 13 | Proje, modül ve şablonlar | kabalang yeni · kaba.proje · modüller · testler · kapsam · kıyaslama |
| 14 | Anahtar sözcük başvurusu | 40 anahtar sözcüğün tamamı |
| 15 | Tuzaklar | ölçülmüş 15 tuzak ve doğru yazımları |
| 16 | Hata ayıklama | kabalang hata-ayikla · durak · değişkenler · yığın izi |
Beş dakikada KabaLang
kullan kaba.sistem
yapi Urun:
ad = ""
fiyat = 0
fonksiyon en_pahali(urunler):
secili = urunler[0]
dongu u icinde urunler:
eger u.fiyat > secili.fiyat:
secili = u
don secili
sepet = []
k = Urun()
k.ad = "Klavye"
k.fiyat = 750
sepet.ekle(k)
f = Urun()
f.ad = "Fare"
f.fiyat = 300
sepet.ekle(f)
en = en_pahali(sepet)
dogrula(en.ad == "Klavye", "en pahalı ürün")
yazdir(f"en pahalı: {en.ad} — {en.fiyat} TL ({sistem.makine_adi()} üzerinde)")kabalang calistir ornek.kblHangi uygulamayı yazmak istiyorsunuz
| İstediğiniz | Başlangıç komutu | Sayfa |
|---|---|---|
| Uçbirim aracı | kabalang yeni aracim --konsol |
9 |
| Pencereli uygulama | kabalang yeni uygulamam --gui |
10 |
| Arka plan servisi | kabalang yeni servisim --servis |
11 |
| Web sunucusu | kabalang yeni sitem --web |
12 |
| Paylaşılan kütüphane | kabalang yeni kutum --kutuphane |
13 |
| Sınama projesi (test + kapsam) | kabalang yeni denegim --sinama |
13 |
Çalışan örnekler
ornekler/ dizininde tek komutla denenen 26 program vardır
(ornekler/README.md): temel dil, terminalde canlı algoritma animasyonları,
arayüz uygulamaları, servis ve web sunucusu.
kabalang calistir ornekler/01-temeller/01_merhaba.kblBu kılavuz ile tasarım belgelerinin farkı
Depo kökündeki KABALANG-*.md dosyaları derleyiciyi geliştirenler
içindir: mimari kararları, blokaj listeleri, ölçüt tabloları. Orada anlatılan
bazı özellikler tasarımdır, henüz uygulanmamıştır. Bu dizin ise
dili kullananlar içindir ve yalnız bugün çalışan şeyleri anlatır —
her örnek derlenerek doğrulanır.