Afaan sagantaa Lua fayyadamuun taphoota adda addaa, faayidaa, roobootii daldalaa fi guddina biroo
uumuu dandeessu
. Afaan Lua hubachuuf salphaadha, hiikaa beekamaa qaba. Lua waliin walitti dhiyeenyaan wal baruuf, akkasumas akkaataa roobootii daldalaa ykn iskiriiptii afaan kanaan barreessuu barachuuf yaadameera.
- Afaan Luaa maali akkamitti faayidaa qaba?
- Daataa seenaa gabaabaa
- Amaloota afaan sagantaa Lua
- Faayidaa fi miidhaa isaa
- Jaavascript waliin wal bira qabuu
- Amaloota sagantaa roobootii daldala afaan Lua
- Haala waliigalaa roobootii daldalaa hunda caalan Lua irratti – furmaata qophaa’aa jalqabaaf
- Roobootii-tarminaalii “Delta Pro”.
- RQ: Dhibbeentaa Tokko
- RQ: Maartiin
- Gosoota iskiriiptii Lua tarminaala QUIK
- Akkaataa roobootii Lua keessatti barreessinu
- Akkaataa LUA keessatti QUIK terminal keessatti sagantaa itti goonu
- Akkaataa iskiriiptii LUA tarminaala daldalaa keessatti itti fe’an
Afaan Luaa maali akkamitti faayidaa qaba?
Lua afaan itti fayyadamuuf salphaa ta’ee fi embeddable ta’eedha. Gargaarsa isaatiin yeroo gabaabaa keessatti bu’uuraalee sagantaa barachuu akka dandeessan jalqaboonni ni amanu. Lua guddina afaan biraatiin qindaa’e waliin milkaa’inaan walitti makameera. Yeroo baayyee barattoota saayinsii dizaayinii elektirooniksii reefuu jalqabaniif ni gorfama.
- Fayyadamaa taphoota kompiitaraa taphatu (plugins barreessuu).
- Ogeessa misooma tapha (motora guddisuu).
- Sagantaa misooma application (faayidaa adda addaatiif pilaaginii barreessuu).
- Developer in the direction of embedded (afaan adeemsa hin saffisiisu fi gahumsaan akka hojjettu si dandeessisa)
- Daldaltoota iskiriiptii barreessuu fi bot daldalaaf.
Roobootii daldalaa QUIK Lua irratti sadarkaa irra deebi’amee bitaatiin
Galata Lua roobootiin daldalaa tokkoo ol uumameera. Faayidaan isaas tokkoon tokkoon fayyadamaa dafee nuances afaanichaa hubachuu fi of danda’ee sagantaa akkasii uumuu danda’a. Karaa isaatiin ajaja gara tarminaala Quik erguu
fi xiinxala teeknikaa raawwachuun ni danda’ama. Afaan Lua maaliif, ilaalcha waliigalaa afaan sagantaa LUA: https://youtu.be/PbYf6uNZFCE
Daataa seenaa gabaabaa
Lua bara 1993 sagantaalee Biraazil kutaa Tecgraf irraa dhufaniin kalaqame. Qopheessitoonni tokkoon tokkoon fayyadamaa guddina afaanichaa irratti fooyya’iinsa murtaa’e gochuu akka danda’u mirkaneessaniiru. Kunis karaa banaa koodii argachuudhaan raawwatamuu danda’a. Biraaziliif afaan sagantaa mataa ishee uumamuun isaa argannoo dhugaa ture. Dhugumatti, sana dura biyyi kun gama misooma kompiitaraatiin milkaa’ina akkasii hin arganne.
Amaloota afaan sagantaa Lua
Lua fuulduratti, developer afaan kana fayyadamuuf carraan ni kennamaaf, lamaanuu ijaarame (sababii iskiriiptii ta’uu isaatiin) fi of danda’ee (haala murtaa’e keessatti, dabalataa malee fayyadamuun ni danda’ama). Barreessitoonni kun Lua uumuu irratti yeroo hojjetan itti yaadanii meeshaa hojiirra oolu kan bakka guddaa hin fudhannee fi meeshaa kamiyyuu irratti salphaatti hojjetu hojjechuuf deeman.
Faayidaa fi miidhaa isaa
- Geejjibaa qulqullina qabu . Lua sagantaalee hedduu irraa adda ta’ee sirna hojii tokko irraa gara sirna hojii biraatti dabarsuu salphaadha. Haala kana keessatti jijjiiramni guddaan hin jiru. Haala kamiinuu koodii keessatti dogongorri hin jiraatu.
- Manneen kitaabaa baay’ee . JavaScript wajjin wal bira qabamee yoo ilaalamu , Lua filannoowwan mana kitaabaa baay’ee xiqqaa qaba. Haa ta’u malee, qabeenyi ofiisaa afaanichaan guutummaatti hojjechuuf waan isin barbaachisu hunda qaba.
- Gahumsa qabaachuu . Sirnichi manneen kitaabaa adeemsa koodii murtaa’eef barbaachisoo ta’an yeroo gabaabaa keessatti akka dabaltu si dandeessisa.
- Fayyadama salphaa . Guruwwan sagantaa afaanichaa bal’inaan muraasa barachuu qofa isaan barbaachisa, sana boodas guddina isaanii keessatti nagaan itti fayyadamuu danda’u. Warra sagantaa hojjechuudhaan reefuu jalqabaniifis Lua hubachuuf yeroo hin fudhatu.
- Qusannaa yaadannoo guddaa . Sagantaa afaan kanaan uumuudhaan ogeessi tokko garaagarummaa jiru analoogii biroo wajjin hubachuuf wabii qaba. Hundaafuu, misoomni Lua meeshaa irratti memory xiqqaa barbaadu.
Miidhaan guddaan afaan kun qabu qubeedhaan kan barreeffame ta’uu isaa qofa. Kana jechuun immoo yeroo baay’ee afaanota misoomaa biroo wajjin walitti makuun qofa itti fayyadamuu ni danda’ama jechuudha. Kanneen keessaa inni baay’ee jaallatamu C. Kana jechuun afaan sagantaa dabalataa barachuu qabda.
Jaavascript waliin wal bira qabuu
Fayyadamtoonni hedduun Lua fi JavaScript wal bira qabuun, koodii isaanii tokko jechuun ni danda’ama jedhu. Dhugumatti garaagarummaa caalaa walfakkeenyi afaanota gidduu jiru baay’eedha. Garuu, walfakkeenyi ifa ta’e jiraatus, garaagarummaa hedduutu jira. Fakkeenyaaf Lua deeggarsa sooftiweerii mataa isaa qaba. Haa ta’u malee, hojjettoonni JaavaScript dhiheenya kana update dhiyaatan, akka jedhutti, fayyadamaan jecha “yield” jedhu jenereetaroota gidduutti barreessuu qofa qaba, sana booda sagantichi ni deeggara.
Amaloota sagantaa roobootii daldala afaan Lua
QLua irratti roobootii uumuun tasumaa rakkisaa miti, jalqaboonni illee danda’u. Wanti guddaan jalqaba irratti yaada bu’uuraa hubachuudha. Koodii qindeessuuf, gulaalaa barruu salphaa ta’e faayidaa qaba. Iskimiin uumaa agarsiiftuu tokkoo qindeessuu wajjin wal fakkaata. Haa ta’u malee, koodii mataa isaa keessatti garaagarummaan xiqqaan jira. “Highlight” gaarii kan biraa – roobootiin haaraa minted ta’e kun bakka barbaaddetti PC keessan irratti kaa’amuu danda’a.
Barbaachisaa! Koodii keessatti faankishiniin tokko qofa jiraachuu qaba – “main”.
Koodiin roobootii erga qindaa’ee gulaalamee booda save gochuun ni gorfama. Waa’ee lua dheerina hin dagatinaa. Akkuma duraan jedhame sagantichi kompiitara keessa bakka fedhe kaa’uun ni danda’ama. Koodii kee qorachuuf, roobootii sana hojjechuu qabda. Kana gochuuf gara kutaa “Services” jedhutti deemi. Jalqaba sararri “Lua scripts” jedhu ni jiraata, cuqaafamuu qaba.
Haala waliigalaa roobootii daldalaa hunda caalan Lua irratti – furmaata qophaa’aa jalqabaaf
Afaan sagantaa Lua fayyadamuun gosoota roobootii adda addaa walxaxaa kamiyyuu uumuu dandeessa. Haa ta’u malee sagantaa qophaa’aa ta’e bitachuu dandeessu. Algoritmota beekamoo duraan hojiif qophaa’an waliin wal baruuf yaadameera. Isaan bitachuu ykn demo version yaalu dandeessu. Roobootii daldalaa guutuu tarminaala QUIK Lua keessatti argamuuf: https://youtu.be/Z2xzOfNZFso
Roobootii-tarminaalii “Delta Pro”.
Waltajjii tokko irratti filannoo kamiyyuu gara 120 akka activate gootu si dandeessisa. Haala kana keessatti, tooftaa fi meeshaalee gosa adda addaa fayyadamuu dandeessa.
RQ: Dhibbeentaa Tokko
Roobootiin kun damee daldalaatiin daldalaaf kan qophaa’edha. Algoritmiin kun galii sochii kana irraa argamu yeroo hedduu akka dabalu si dandeessisa. Balaan ni xiqqaata, salphaatti shallagamuu danda’a.
RQ: Maartiin
Sirnichi waliigaltee osoo hin godhin dura lootii shallaguuf si dandeessisa. Daldalli haala “semi-automatic” jedhuun ni kennama. Sadarkaaleen milkaa’inaan hordofamuu fi harkaan saaguun ni danda’ama.
Gosoota iskiriiptii Lua tarminaala QUIK
Yeroo hojii murtaa’e tarminaala QUIK keessatti raawwattu, iskiriiptii armaan gadii fayyadamu:
- Iskiriiptii Lua . Neetwork irratti, diskiin naannoo irratti, ykn bakka biraa tarminaaliin itti dhaqqabamutti kuufamuu danda’u. Gargaarsa isaaniitiin roobootii daldalaa uumuuf dalagaa gahaa qabu. QUIK keessatti gabatee uumuun, filannoowwan meeshaa fayyadamuu, ajajoota hojiiwwan adda addaa raawwachuuf kennuu fi kkf ni danda’ama.
- Agarsiistota amala . Asitti, ilaalcha duraa wajjin wal bira qabamee yoo ilaalamu, dalagaa baay’ee xiqqaadha. Sagantaan kun fayyadamaan algoritmiin gochootaa chaartiiwwan tarminaalii irratti akka agarsiisuuf yaadameeti.
Sagantaa Lua keessatti warra afaanicha sirriitti beekuu barbaadaniif – qajeelfama guutuu buufadhaa:
Sagantaa Lua keessatti Robots in Lua for QUIK – Iceberg robot: https://youtu.be/cxXwF_xmTHY
Akkaataa roobootii Lua keessatti barreessinu
Fayyadamaan roobootii mataa isaa uumuuf erga murteessee booda algoritmiin dursee qindaa’e hordofuu qaba. Yeroo muuxannoo sagantaa hojjechuu argatu salphaatti koodii mataa isaa barreessuu fi yaalii gochuu ni danda’a. Naannoo kana qorachuuf Lua filachuudhaan namni jalqabaa tokko hin dogongoru. Hundaafuu, jalqaba irratti wanti guddaan afaan sagantaa salphaa fi hubatamaa ta’e irratti dhaabbachuudha. Jalqabuuf sagantaa tarminaala daldalaa QUIK banaa. Foddaa isaa keessatti, galmee uumuu qabda. Bakki kun bakka iskiriiptiin barreeffame hundi itti qusatamuudha. Fayyadamaan galmeef guutummaatti maqaa kamiyyuu kennuu danda’a, garuu arfiilee Laatiin qofa of keessaa qabaachuu qaba. Mee maqaan isaa “LuaScripts” haa jennu. Itti aansuudhaan, galmee hojii irra oolchuu fi achitti gulaalaa barruu uumuu qabda, fakkeenyaaf, Notepad. Bakka duwwaa keessatti (foddaa sagantaa keessa) mirga cuqaasuu qabda
. Sanduuqa qaaqa ni mul’ata, tarree isaa keessatti caancala “Uumi” filachuu qabda, kana booda tarree “Galmee Barruu” filachuu qabda.
function main()
message(“Iskiriiptiin koo inni jalqabaa jalqabameera”);
end Itti aansuudhaan, menu keessaa button save jedhu cuqaasuu qabda.
Akkaataa LUA keessatti QUIK terminal keessatti sagantaa itti goonu
Karaaleen beekamoo 3tu jiru:
- Faayilii barruu kamiyyuu ni uuma, bakka dheerinni .lua kaa’amuu qabu. Itti aansuudhaan, gulaalaa banuun koodii barreessuu qabda. Erga jalqabee booda algoritmiin akkasii al tokko qofa raawwatama. Yeroo hin murtoofneef harkaan hojjechuu dandeessa. Odeeffannoo murtaa’e yeroo tokkotti shallaguuf itti fayyadamuu dandeessa.
- Iskiriiptii Lua mataa isaa keessatti, faankishinii main() jedhamu uumuu qabda . Dabalataanis, faankishinii walfakkaataa keessatti, koodii barreeffame galchuu qabda. Akkasumas faankishiniin sleep() iskiriiptii yeroodhaaf dhaabuuf ykn, faallaa kanaatiin, deebisee jalqabuuf faayidaa qaba. Kunis, yoo faankishinii ijoo () hojii irra oolchite, achiis faankishinii hirribaa () galchite, shallaggii firikuweensii gidduu yeroo murtaa’e tokkoon galmaan gahuu ni dandeessa.
- Sagantaa QLUA keessatti, moodeela misoomaa taateedhaan geggeeffamu fayyadamuu dandeessa. Haala kanaan, amma jijjiirama faankishinii tokko keessatti mul’atu “adda baasuun” fi sababa kanaan ajajoota armaan gadii raawwachuun barbaachisaa miti.
Mala isa lammaffaa kana bal’inaan xiinxaluuf yaadameera. Taatee murtaa’e qabachuuf, faankishinii iskiriiptii keessatti Saffisaa keessatti barreessuu qabda. Iskiimii armaan gadii fayyadamuu dandeessa:
main() dhufa . Sana booda,
is_run labsuu qabda , faankishinichi gatii
dhugaa of keessaa qabaatahanga fayyadamaan qaree Iskiriiptii Dhaabuu hojii irra oolchuutti. Sana booda jijjiiramaan faankishinii gara haalata sobaatti OnStop() keessa seena. Sana booda, faankishiniin main() xumurama, iskiriiptiin ofii isaatii ni dhaabbata. Iskiriiptiin barreeffame qusachuu fi hojjechuu qaba. Yeroo daldala raawwatu fayyadamaan tokkoon tokkoon lootii fi hanga dhumaa daldalaa deetaa ni argu.
Akkaataa iskiriiptii LUA tarminaala daldalaa keessatti itti fe’an
Tarminaalonni leenjii fi istaandaardii roobootii daldalaa fe’uuf algoritmiin walfakkaataa barbaadu:
- Kutaa “Services” jedhu kan menu gubbaa tarminaalii keessa jiru cuqaasuun barbaachisaadha.
- Itti aansuudhaan, qaree “LUA scripts” sanduuqa qaaqa tarree keessaa barbaadiitii cuqaasi:
- Yeroo sanatti, foddaan “Available Scripts” jedhu mul’achuu qaba. Sana booda, “Add” kan jedhu activate gochuun faayila roobootii daldalaa barbaachisu filachuu qabdu.
Daataa chaartii Lua irraa iskiriiptiitiin tarminaala Quik keessatti fudhachuu: https://youtu.be/XVCZAnWoA8E Lua sagantaa barachuuf fi gara fuulduraatti milkaa’inaaf filannoo guddaadha. Wanti guddaan yaada (theory) dubbisuu qofa irratti dhaabbachuu miti. Yeroo hunda shaakala gochuudhaan barumsa sana barachuun gaariidha. Yeroo murtaa’e booda, developer guddina agarsiisuu fi oomisha mataa isaa gatii qabu uumuu ni danda’a.