Add multilingual Agila learning examples and Git practice guide

This commit is contained in:
Agila University committed 2026-11-01 14:08:37 +08:00
commit 85f487afb0
79 files changed
+813

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
# Bahagi para sa pag-usad na dumaan sa pagsusuri
Palawakin ang bahaging para sa level gamit ang sarili mong operasyong may malinaw na specification. Isumite ang ebidensiya ng matagumpay at inaasahang kabiguang mga kaso kasama ang paliwanag na maaaring suriin.
- Itala ang pinapayagang input at ipinangakong resulta.
- Panatilihing nakabukas ang assertion checking at itala ang compiler settings.
- Subukan ang mababa at mataas na wastong input at hiwalay na paglabag sa precondition.
- Ipakitang nahuhuli ang sadyang maling body, at pagkatapos ay ibalik ito.
- Ipaliwanag ang natitirang limitasyon at tukuyin ang susunod na hakbang sa pag-aaral.
+18
View File
@@ -0,0 +1,18 @@
pragma Assertion_Policy (Check);
with Ada.Text_IO;
procedure Main is
subtype Level is Integer range 0 .. 10;
function Next_Level (Current : Level) return Level
with Pre => Current < Level'Last,
Post => Next_Level'Result = Current + 1;
function Next_Level (Current : Level) return Level is
begin
return Current + 1;
end Next_Level;
begin
pragma Assert (Next_Level (0) = 1);
pragma Assert (Next_Level (9) = 10);
Ada.Text_IO.Put_Line ("Pumasa ang dalawang pagsusuri sa hangganan");
end Main;
+8
View File
@@ -0,0 +1,8 @@
# Ang maipapaliwanag kong anunsiyo sa pag-aaral
Sumulat ng maikling programang Ada na nagpapahayag ng layunin sa pag-aaral at naglalabas ng mensahe ng pag-usad kapag natugunan ang kondisyon.Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
- Ipaliwanag sa sarili mong salita ang with, deklarasyon, begin/end, :=, at =.
- Ipakita ang isang panimulang halagang naglalabas ng mensaheng may kondisyon at isa na hindi.
- Itala ang isang sadyang mali sa syntax at kung paano nakatulong ang compiler upang mahanap ito.
- Kilalanin ang anumang tulong ng AI at ipaliwanag ang bawat linyang pinanatili mo.
+11
View File
@@ -0,0 +1,11 @@
with Ada.Text_IO;
procedure Main is
Lessons_Done : Natural := 0;
begin
Ada.Text_IO.Put_Line ("Ang una kong sesyon ng pag-aaral sa Agila");
Lessons_Done := Lessons_Done + 1;
if Lessons_Done = 1 then
Ada.Text_IO.Put_Line ("Natapos ang isang aralin");
end if;
end Main;
+9
View File
@@ -0,0 +1,9 @@
# Pagkuwenta ng plano sa pag-aaral na muling magagamit
Bumuo at subukan ang maliit na bahaging nagkukuwenta ng bilang ng aralin. Magsimula sa nested function; maaari mo itong ilipat sa isang Ada package sa lokal na proyektong maraming file.
- Sabihin ang tuntunin para sa Total/Done nang hindi tumutukoy sa source code.
- Suriin ang (0,0), (4,0), (4,3), (4,4), at (4,5).
- Ipaliwanag kung bakit naaabot lamang ang subtraction kapag mas mababa ang Done sa Total.
- Ihiwalay ang pagkukuwenta sa output.
- Magsama ng tala para sa pagsusuri na nagpapaliwanag ng isang pasya sa disenyo at isang limitasyon.
+13
View File
@@ -0,0 +1,13 @@
with Ada.Text_IO;
procedure Main is
function Remaining (Total, Done : Natural) return Natural is
begin
if Done >= Total then
return 0;
end if;
return Total - Done;
end Remaining;
begin
Ada.Text_IO.Put_Line (Natural'Image (Remaining (4, 1)));
end Main;
+9
View File
@@ -0,0 +1,9 @@
# Tagasuri ng marka na may talahanayan ng mga test
Baguhin ang panimulang code upang maging maipapaliwanag na tagasuri ng marka na may dokumentadong hangganan para sa pagsusuri. Gumamit muna ng nakatakdang raw values para madaling maulit ang pagsasanay bago magdagdag ng interaktibong input.
- Idokumento ang pinapayagang halaga at tugon sa hindi wastong halaga.
- Subukan ang -1, 0, 1, 99, 100, at 101.
- Subukan ang magkabilang panig at ang eksaktong hangganan para sa pagsusuri.
- Ipaliwanag ang membership test, conversion, at anumang pag-aayos ng mensahe.
- Bahagi ng pag-usad na maaari mong mapatunayan
+12
View File
@@ -0,0 +1,12 @@
with Ada.Text_IO;
procedure Main is
subtype Score is Integer range 0 .. 100;
Raw : Integer := 101;
begin
if Raw in Score then
Ada.Text_IO.Put_Line ("Tinanggap" & Score'Image (Score (Raw)));
else
Ada.Text_IO.Put_Line ("Dapat nasa pagitan ng 0 at 100 ang marka");
end if;
end Main;
+9
View File
@@ -0,0 +1,9 @@
# Pagsusuri ng draft na may hangganan na parang ginawa ng AI
Suriin at ayusin ang function na sadyang mali sa hangganan.Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
- Muling sabihin sa sarili mong salita ang requirement na hindi bababa sa 70.
- Sundan ang 69, 70, at 71 bago patakbuhin.
- Ipakita ang mali at itinamang paghahambing kasama ang aktuwal na resulta.
- Ipaliwanag ang type ng input, resultang Boolean, at tawag para sa output.
- Bahagi ng pag-usad na maaari mong mapatunayan
+10
View File
@@ -0,0 +1,10 @@
with Ada.Text_IO;
procedure Main is
function Passed (Score : Integer) return Boolean is
begin
return Score > 70; -- Sadyang halimbawang susuriin
end Passed;
begin
Ada.Text_IO.Put_Line (Boolean'Image (Passed (70)));
end Main;
+9
View File
@@ -0,0 +1,9 @@
# Pakete para sa pagsusuri sa Agila Forge
Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
- Isama ang README na may problema, kailangan bago magsimula, eksaktong command, at limitasyon.
- Isumite ang source at hiwalay na ebidensiya para sa normal na kaso, hangganan, at kabiguan.
- Suriin ang diff at ipaliwanag ang bawat pinanatiling pagbabago.
- Idokumento ang tulong ng AI at ang pagpapatunay na ginawa mo mismo.
- Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
+20
View File
@@ -0,0 +1,20 @@
# Pakete para sa pagsusuri
Problema at nilalayong kilos:
Mga tool / compiler / revision ng SDK:
Mga command sa pagbuo at pagpapatakbo:
Test case | Inaasahan | Aktuwal | Bakit mahalaga ang kasong ito
Pasya sa disenyo at patakaran sa kabiguan:
Tulong ng AI at pagpapatunay ko:
Kilalang mga limitasyon:
Puna ng awtomatikong pagsusuri at mga rebisyon:
Susunod na layunin sa pag-aaral:
+9
View File
@@ -0,0 +1,9 @@
# Maikling ulat ng bug na may nauulit na ebidensiya
Gawing malinaw na ulat ng bug at pag-aayos ang depekto sa hangganan. Isama ang hiwalay na inaasahang mga resulta, regression test, at malinaw na limitasyon.
- Sabihin ang requirement at tukuyin ang inaasahan bago patakbuhin.
- Ipakita ang pinakamaliit na input na naglalantad ng orihinal na pagkakasalungat.
- Ipakitang nabibigo ang test para sa depekto at pumapasa matapos ayusin.
- Itala ang assertion policy at compiler command.
- Ipaliwanag ang isang hindi nasubukang requirement at magmungkahi ng susunod na kaugnay na kaso.
+14
View File
@@ -0,0 +1,14 @@
pragma Assertion_Policy (Check);
with Ada.Text_IO;
procedure Main is
function Passed (Score : Integer) return Boolean is
begin
return Score >= 70;
end Passed;
begin
pragma Assert (not Passed (69));
pragma Assert (Passed (70));
pragma Assert (Passed (71));
Ada.Text_IO.Put_Line ("Pumasa ang mga pagsusuri sa hangganan");
end Main;
+9
View File
@@ -0,0 +1,9 @@
# Pagsusuri ng SDK na may ebidensiya
Suriin ang maikling draft sa Flying V batay sa inilabas na SDK. Gumawa ng suportadong prototype at listahan ng mga pahayag na nangangailangan pa ng dokumentasyon.
- Suriin ang UI field, pagkakasunod-sunod ng lifecycle, at pahayag tungkol sa graphics output.
- Itala ang eksaktong source path at revision ng SDK na ginamit.
- Uriin ang mga pahayag bilang suportado, sinasalungat, o hindi napatunayan.
- Patakbuhin ang suportadong prototype at ihambing ang inaasahan sa aktuwal na output.
- Ipaliwanag ang hangganan ng sandbox at panatilihing nakatatak na mungkahi ang interaksiyon sa hinaharap.
+5
View File
@@ -0,0 +1,5 @@
import agila
fn main() {
agila.preview(agila.Button{label: 'Simulan ang pagsasanay'})
}
+9
View File
@@ -0,0 +1,9 @@
# Tala ng pag-aaral sa tatlong hakbang
Sumulat ng programang Flying V na nagla-log ng simula, layunin, at katapusan ng sesyon ng pag-aaral gamit ang dokumentadong function ng SDK.
- Gamitin ang agila.log at tukuyin ang depinisyon nito sa pampublikong SDK.
- Hulaan ang eksaktong output, kasama ang prefix ng SDK, bago patakbuhin.
- Ipaliwanag ang import, main, string argument, at pagkakasunod-sunod ng mga utos.
- Itala ang isang diagnostic dahil sa maling baybay ng function at ang pag-aayos nito.
- Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
+5
View File
@@ -0,0 +1,5 @@
import agila
fn main() {
agila.log('Kaya kong ipaliwanag ang programang ito')
}
+9
View File
@@ -0,0 +1,9 @@
# Laboratoryo ng lifecycle na may inaasahang kabiguan
Bumuo ng maliit na application at mga hiwalay na eksperimento sa lifecycle. Ipaliwanag kung aling error ang nakikita ng SDK at kung ano ang susunod na ginagawa ng application.
- Ipakita ang normal na pagkakasunod-sunod na create/start/request/stop.
- Hiwalay na subukan ang walang lamang id at walang lamang pangalan.
- Hiwalay na subukan ang request bago start at dalawang start.
- Ipaliwanag ang pagkakaiba ng error handler na nagre-return at ng nagpapatuloy.
- Itala ang source, output, at limitasyon ng pagsusuri ng capability sa sandbox para sa reviewer.
+15
View File
@@ -0,0 +1,15 @@
import agila
fn main() {
mut app := agila.new_app('dev.student.study', 'Kaagapay sa Pag-aaral') or {
eprintln(err.msg())
return
}
app.start() or {
eprintln(err.msg())
return
}
app.request(.ui) or { eprintln(err.msg()) }
agila.log('Handa nang mag-aral')
app.stop()
}
+9
View File
@@ -0,0 +1,9 @@
# Paglalarawan ng study card para sa baguhan
Gamitin ang ibinigay na mga uri ng widget upang ilarawan ang study card. Ihiwalay ang napatunayang sandbox output sa guhit ng nilalayong interaktibong kilos sa hinaharap.
- Bumuo ng Column gamit ang mga child na Text at Button.
- Hulaan at suriin ang bilang ng child para sa isa, dalawa, at tatlo.
- I-preview ang hiwalay na Text at Button at ipaliwanag ang kanilang paglalarawan.
- Pumili ng madaling maunawaang teksto at itala ang puna ng isang mambabasa.
- Ilista nang hiwalay ang nilalayong interaksiyon at ipaliwanag kung bakit walang callback ang kasalukuyang Button.
+11
View File
@@ -0,0 +1,11 @@
import agila
fn main() {
view := agila.Column{
children: [
agila.Text{value: 'Ngayon: unawain ang isang function'},
agila.Button{label: 'Simulan ang pagsasanay'},
]
}
agila.preview(view)
}
@@ -0,0 +1,9 @@
# Maipapaliwanag na prototype ng Agila study app
Maghanda ng prototype sa Flying V na maaaring suriin, gamit ang dokumentadong lifecycle at UI contracts. Magdagdag ng hiwalay na eksperimento sa descriptor validation; idokumento kung ano ang naipapakita ng sandbox at kung ano ang nangangailangan ng production runtime.
- Ipaliwanag ang lahat ng API na ginamit at ituro ang sanggunian sa pampublikong SDK.
- Isama ang matagumpay na lifecycle at isang kasong may hinawakang error.
- Isama ang UI description at tumpak na inaasahang sandbox output.
- Hiwalay na subukan ang wasto, zero, at negatibong mesh counts.
- Suriin ang iyong source, hula, at aktuwal na resulta. Gamitin ang puna ng awtomatikong pagsusuri upang balikan ang mali at piliin ang susunod na test.
@@ -0,0 +1,12 @@
import agila
fn main() {
mesh := agila.MeshDescriptor{
vertex_count: 3
index_count: 3
}
agila.submit_mesh(mesh) or {
eprintln(err.msg())
return
}
}
+4
View File
@@ -0,0 +1,4 @@
program HelloAgila;
begin
writeln('Kumusta, Agila!');
end.
+1
View File
@@ -0,0 +1 @@
fn main() { println!("Kumusta, Agila!"); }