Bi karanîna zimanê bernamesaziyê Lua, hûn dikarin lîstikên cihêreng, karûbar,
robotên bazirganiyê û pêşkeftinên din biafirînin. Zimanê Lua hêsan tê fêm kirin, xwedî wergêrek populer e. Tê pêşniyar kirin ku hûn bi Lua re ji nêz ve werin nasîn, û her weha fêr bibin ka meriv çawa bi vî zimanî robotek bazirganî an nivîsarek dinivîse.
- Zimanê Lua çi ye û çawa bikêr e?
- Daneyên dîrokî yên kurt
- Taybetmendiyên zimanê bernameya Lua
- Awantaj û dezawantajên
- Berawirdkirina bi Javascript
- Taybetmendiyên robotên bernamekirinê yên ji bo bazirganiyê bi zimanê Lua
- Nêrînek çêtirîn robotên bazirganiyê yên li ser Lua – çareseriyên amade ji bo destpêk
- Robot-terminal “Delta Pro”
- RQ: Ji sedî yek
- RQ: Martin
- Cûreyên tîpên Lua ji bo termînala QUIK
- Meriv çawa robotek li Lua dinivîse
- Meriv çawa li LUA-yê di termînala QUIK de bername dike
- Meriv çawa skrîptek LUA li termînalek bazirganiyê saz dike
Zimanê Lua çi ye û çawa bikêr e?
Lua zimanek bikêrhatî ya hêsan e. Destpêk qebûl dikin ku bi alîkariya wê, hûn dikarin di demek kurt de bingehên bernamekirinê fêr bibin. Lua bi pêşveçûnên ku bi zimanek din hatine berhev kirin bi serfirazî tête hev kirin. Bi gelemperî ji xwendekarên ku di zanistiya sêwirana elektronîkî de nû dest pê dikin tê pêşniyar kirin.
Zimanê Lua gelek caran di warên cihê de tê bikaranîn. Dibe ku ew bikêr be:
- Bikarhênerek ku lîstikên komputerê dilîze (pêvekan binivîse).
- Pisporê pêşkeftina lîstikê ( motorê pêşve bibin).
- Bernameçêkerê pêşkeftina serîlêdanê (ji bo karûbarên cihêreng pêvekan binivîse).
- Pêşdebir di rêça vegirtinê de (ziman pêvajoyê hêdî nake û dihêle hûn bi bandor bixebitin)
- Bazirganên ji bo nivîsandina nivîsan û botên bazirganiyê.
Bi saya Lua, zêdetirî yek robotê bazirganiyê hate afirandin. Awantaj ev e ku her bikarhênerek zû dikare hûrgelên zimanî fam bike û serbixwe bernameyek weha biafirîne. Bi wê re, dê gengaz be ku fermanan ji
termînala Quik re bişîne û analîzên teknîkî bike. Zimanê Lua ji bo çi ye, nihêrînek li ser zimanê bernamenûsê LUA: https://youtu.be/PbYf6uNZFCE
Daneyên dîrokî yên kurt
Lua di sala 1993-an de ji hêla bernameçêkerên Brezîlyayê yên ji beşa Tecgraf ve hate vedîtin. Pêşdebiran piştrast kirin ku her bikarhênerek dikare di pêşveçûna ziman de hin guhertinan bike. Ev dikare bi gihandina vekirî ya kodê were kirin. Ji bo Brezîlyayê, derketina zimanê bernamesaziya xwe vedîtinek rastîn bû. Bi rastî, berî wê, vî welatî di warê pêşkeftina komputerê de serkeftinek wusa bi dest nexist.
Ziman li ser esasê SOL û DEL hate afirandin. Van geşedanan cîhan salek ji Lua zûtir dît. Heman rêxistina Brezîlyayê wekî nivîskar tevdigeriya. Van zimanên bernamesaziyê ji hêla Petrobras ve hatine peywirdarkirin, pargîdaniyek heman eyaletê ku bi hilberîn û hilberîna neftê ve mijûl e. Guhertoya herî dawî ya Lua 5.4.0-ê bi nisbeten nû ve hate berdan – di sala 2020-an de. Pêşdebir hewl didin ku her ku diçe taybetmendiyên balkêş û bikêrhatî bixin nav projeyê. Ji ber vê yekê, bername bi domdarî tê nûve kirin û di nav pêşdebiran de daxwaz e.
Taybetmendiyên zimanê bernameya Lua
Bi Lua re rû bi rû maye, ji pêşdebir re fersendek tê dayîn ku vî zimanî bikar bîne, hem çêkirî (ji ber ku ew hatî nivîsandin) û hem jî serbixwe (di hin rewşan de, ew dikare bêyî pêvekan were bikar anîn). Dema ku nivîskar li ser afirandina Lua xebitîn, ew bi zanebûn çûn ku amûrek xebitandinê çêbikin ku pir cîh nagire û dê bi hêsanî li ser her cîhazê bixebite.
Pêşdebiran hewl dan ku vî zimanî bi qasî ku pêkan hêsan bikin, da ku bernamenûsên nûjen jî zû karibin wî master bikin. Ev daxwaza zêde ya projeyê ye. Pispor xwedî derfet in ku kodê binivîsin û pêşkeftinên mezin biafirînin bêyî ku serî li pirtûkxaneyan li ser malpera fermî bidin. Nivîskar li bernameyê bi xwe hebûna pîvanên pêwîst girtin. Bikarhênerên nûjen meyl dikin ku fêr bibin li kîjan deveran zimanê Lua tê bikar anîn. Ew ji bo hilberîna bernameyan di sektora pîşesaziyê de hate çêkirin. Lê îro bi alîkariya vî zimanî robotên bazirganiyê yên cihêreng, nivîsar, lîstikên kompîturê, sepan, botên Telegram û hwd têne çêkirin. Wekî din, Lua beşdarî teknîkek nûjen e ku ji bo vekolîna cîhê dibe alîkar. Di hînkirina xwendekaran de li zanîngehan jî tê bikaranîn. Zimanê bernamesaziyê yê herî populer Lua li malê tê hesibandin. Ew li Brezîlyayê ye ku hema hema li her deverê (ku gengaz be) tê bikar anîn.
Awantaj û dezawantajên
Mîna her bernameyekê, mekanîzma û zimanê bernamesaziyê yê Lua hejmarek erênî û neyînîyên wê hene. Hêja ye ku bi aliyên erênî yên pêşveçûnê dest pê bike:
- Veguhestina kalîteyê . Berevajî gelek bernameyan, Lua hêsan e ku ji yek pergala xebitandinê ya din veguherîne. Di vê rewşê de, guhertinên mezin tune. Di her rewşê de, dê di kodê de xeletî nebe.
- Gelek pirtûkxane . Li gorî JavaScript , Lua vebijarkên pirtûkxaneyê pir hindiktir e. Lêbelê, çavkaniya fermî her tiştê ku hûn hewce ne ku bi tevahî bi ziman re bixebitin hene.
- Efficiency . Pergal dihêle hûn di demek kurt de wan pirtûkxaneyên ku ji bo pêvajoyek kodkirinê ya taybetî girîng in lê zêde bikin.
- Bikaranîna hêsan . Gurûsên bernamesaz tenê hewce ne ku çend hûrguliyên ziman fêr bibin, û wê hingê jî ew dikarin bi ewlehî di pêşkeftinên xwe de bikar bînin. Ji bo yên ku nû dest bi bernamekirinê dikin, ji bo fêmkirina Lua jî demek dirêj nake.
- Teserûfa bîranînê ya berbiçav . Bi afirandina bernameyên bi vî zimanî, pispor garantî dike ku cûdahiya bi analogên din re bibîne. Beriya her tiştî, pêşkeftinên Lua li ser cîhazê kêmtir bîranîn hewce dike.
Yekane kêmasiya girîng a ziman ew e ku ew nivîsar e. Û ev tê vê wateyê ku pir caran ew tenê bi zimanên pêşkeftinê yên din re tê bikar anîn. Ji van ya herî populer C ye. Ango divê hûn zimanek bernamenûsek zêde fêr bibin.
Berawirdkirina bi Javascript
Pir bikarhêner Lua bi JavaScript re hevber dikin, îdîa dikin ku kodên wan hema hema yek in. Bi rastî di navbera zimanan de ji cudahiyan bêtir wekhevî hene. Lê belê, tevî wekheviyên eşkere, gelek cudahî hene. Mînakî, Lua piştevaniya nermalava xwe heye. Lêbelê, pêşdebirên JavaScript di van demên dawî de nûvekirinek pêşkêş kirin, ku li gorî wê, bikarhêner tenê hewce dike ku peyva “hilber” di navbera jeneratoran de binivîse, piştî ku bername dê were piştgirî kirin.
Operatorê Lua ji bo bilindkirina hêzê nîşanek weha “^” destnîşan dike, lê di JavaScriptê de ew “**” e. Ya paşîn fonksiyonên zoom û mezinkirinê heye. Lê Lua dikare barkirina operatorê bike. JavaScript tenê fonksiyonên guhêrbar dihewîne, dema ku Lua wan diyar kiriye. JavaScript dikare bi piştgirîkirina standarda naskirî ya Unicode pesnê xwe bide. Têkiliya “!==” ji bo nîşankirina newekheviya ziman tê bikaranîn û Lua jî ji bo heman armancê “~=” bikar tîne. Cûdahiyên din di tabloyê de têne pêşkêş kirin.
Taybetmendiyên robotên bernamekirinê yên ji bo bazirganiyê bi zimanê Lua
Afirandina robotan li ser QLua qet ne dijwar e, tewra destpêk jî dikarin wê bi rê ve bibin. Ya sereke ev e ku meriv di destpêkê de teoriya bingehîn fam bike. Ji bo berhevkirina kodê, edîtorê nivîsê ya herî hêsan bikêr e. Pîlana afirandinê mîna berhevkirina nîşanek e. Lêbelê, di kodê bixwe de cûdahiyek ne girîng heye. “Hişkêş”ek din a baş – robotê ku nû hatî çêkirin dikare li her cîhê PC-ya we were danîn.
Giring! Divê di kodê de tenê fonksiyonek hebe – “sereke”.
Dema ku koda robotê hate berhev kirin û guherandin, tê pêşniyar kirin ku wê hilînin. Li ser dirêjkirina lua ji bîr nekin. Wekî ku berê jî behs kir, bername dikare li her cîhê komputerê were danîn. Ji bo ceribandina koda xwe, hûn hewce ne ku robotê bimeşînin. Ji bo vê yekê, biçin beşa “Xizmet”. Li jêr dê xêzek “Nivîsên Lua” hebe, divê were klîk kirin.
Dûv re, pencereyek bi tîpên barkirî dê xuya bibe. Li wir divê hûn pelê hewce hilbijêrin û bi bişkoja guncan re wê bimeşînin.
Di dawiyê de, tê pêşniyar kirin ku koda botê ji bo xeletiyan kontrol bikin. Ger her tişt baş be, robot dê dest pê bike. Di bûyera têkçûnê de, hêja ye ku dîsa vegere kodê û rastbûna wê kontrol bike.
Nêrînek çêtirîn robotên bazirganiyê yên li ser Lua – çareseriyên amade ji bo destpêk
Bi karanîna zimanê bernamesaziyê Lua, hûn dikarin cûrbecûr robotên her tevliheviyê biafirînin. Lêbelê, hûn dikarin bernameyek amadekirî bikirin. Tê pêşniyar kirin ku hûn bi algorîtmayên naskirî yên ku jixwe ji bo xebatê amade ne nas bikin. Hûn dikarin wan bikirin an guhertoya demo biceribînin. Robotê bazirganiyê ya bêkêmasî ya ji bo termînala QUIK li Lua: https://youtu.be/Z2xzOfNZFso
Robot-terminal “Delta Pro”
Destûrê dide we ku hûn li ser yek platformê bi qasî 120 vebijarkan çalak bikin. Di vê rewşê de, hûn dikarin celebên stratej û amûran bikar bînin.
RQ: Ji sedî yek
Robot ji bo bazirganiya di qada bazirganiyê de hatiye çêkirin. Algorîtm dihêle hûn dahata ji vê çalakiyê çend caran zêde bikin. Rîsk têne kêm kirin, ew bi hêsanî têne hesibandin.
RQ: Martin
Pergal destûrê dide we ku hûn berî ku peymanek çêbikin pir hesab bikin. Bazirganî di moda “nîv-otomatîk” de tê peyda kirin. Asta bi serfirazî têne şopandin û bi destan têne danîn.
Cûreyên tîpên Lua ji bo termînala QUIK
Dema ku di termînala QUIK de karek diyarkirî tê kirin, skrîptên jêrîn têne bikar anîn:
- Nivîsarên Lua . Ew dikarin li ser torê, li ser dîskek herêmî, an li cîhek din ku ew ê bi termînalê re bigihîjin werin hilanîn. Ew têra xwe fonksiyonel in ku bi alîkariya wan robotek bazirganiyê biafirînin. Dê gengaz be ku di QUIK de tabloyan biafirînin, vebijarkên amûrê bikar bînin, fermanan bidin ku karên cihêreng bikin û hwd.
- Nîşaneyên xwerû . Li vir, li gorî nêrîna berê, fonksiyonek pir kêmtir e. Bername ji bo bikarhêner armanc e ku algorîtmaya çalakiyan li ser nexşeyên termînalê nîşan bide.
Bernamekirina li Lua ji bo kesên ku dixwazin bi tevahî ziman serdest bibin – Rêbernameya bêkêmasî dakêşin:
Bernamekirin li Lua Robots in Lua ji bo QUIK – Robotê Iceberg: https://youtu.be/cxXwF_xmTHY
Meriv çawa robotek li Lua dinivîse
Piştî ku biryar da ku robota xwe biafirîne, bikarhêner pêdivî ye ku algorîtmayek pêş-berhevkirî bişopîne. Dema ku ew di bernamesaziyê de ezmûnek bi dest xist, ew ê bikaribe bi hêsanî kodên xwe binivîse û ceribandinê bike. Bi bijartina Lua ji bo xwendina vê deverê, destpêkek dê xelet nebe. Beriya her tiştî, di destpêkê de, ya sereke ev e ku meriv li ser zimanek bernamenûsek hêsan û herî têgihîştî raweste. Ji bo ku dest pê bikin, bernameya termînalê bazirganiya QUIK vekin. Di pencereya wê de, hûn hewce ne ku peldankek biafirînin. Ev cîh e ku dê hemî nivîsarên nivîskî bêne tomar kirin. Bikarhêner dikare peldankê bi tevahî navek bide, lê divê ew tenê ji tîpên latînî pêk were. Em bêjin navê wê “LuaScripts” e. Dûv re, hûn hewce ne ku peldankê çalak bikin û li wir edîtorek nivîsê biafirînin, mînakî, Notepad. Li cîhek vala (di nav pencereya bernameyê de) hûn hewce ne ku rast-klîk bikin
. Dê qutiyek diyalogê xuya bibe, di navnîşa ku hûn hewce ne ku tabloya “Create”, û dûv re jî rêza “Belgeya Nivîsar” hilbijêrin.
Divê navek jî lê bê dayîn, da ku paşê tevlihev nebe. Mînakî, hûn dikarin “Script_N1” binivîsin. Li ser çareseriya zimanê tê bikaranîn ji bîr nekin – .lua. Ango, divê bikarhêner li ser belgeya “Script_N1.lua” nivîsek weha bigire. Lêbelê, Windows pir caran bi danîna pelek .txt pêvekê bixweber diguhezîne. Di vê rewşê de, tê pêşniyar kirin ku di NotePad ++ de belgeyek biafirînin, çareseriya pêwîst destnîşan bikin. Di vê bernameyê de, hûn ê hewce ne ku beşa “Syntaxes” hilbijêrin. Qutiyek diyalogê bi çend vebijarkan dê li vir xuya bibe. Hûn hewce ne ku “L” hilbijêrin. Ji wir, pencereyek din dê xuya bibe ku hûn hewce ne ku li ser “Lua” bikirtînin.
Piştî wê, di heman menuyê de, digel beşa “Syntaxes”, divê hûn li beşa “Pel” bikirtînin. Di pencereya paşîn de dê navnîşek hebe – “Wekî tomar bike”. Pêdivî ye ku bikarhêner li ser bitikîne û li bendê bimîne heya ku pencereyek nû vebe.
Li wir, li jor, rêzek bi navê peldanka ku berê hatî afirandin “Skrîptên Lua” dê xuya bibe. Li binê pencereyê, 2 belgeyên din ên ku bikarhêner çêkiriye têne xuyang kirin. Ger her tişt li hev bike, divê hûn çalakiyê piştrast bikin û rewşa heyî ya kodê hilînin.
Pêngava paşîn ev e ku hûn kodê bi zimanê bernamesaziya bijartî Lua binivîsin. Destpêk dikarin rêwerzê bikar bînin, ew ê ji bo afirandina kodek hêsan arîkar bike, da ku pispor dikare destê xwe biceribîne. Algorîtmaya çalakiyan di pelê bernameyê ya bi navê QLUA.chm de cih digire. Ji bo nimûne, tê pêşniyar kirin ku kodek wusa sivik binivîse:
Peyama fonksiyona main(
“”Pêkemîn nivîsara min hat destpêkirin”);
dawiya Piştre, hûn hewce ne ku di menuê de li ser bişkoja tomarkirinê bikirtînin.
Divê kod di pelê “Script_N1.lua” de were tomarkirin. Em wê dest pê dikin û dibînin ka skrîpta destpêkê çawa tê xuyang kirin. Ji bo vekirina wê di QUIK de, hûn hewce ne ku vê bernameyê vekin û di beşa vebijarkan de tabloya “Xizmet” hilbijêrin. Dûv re, qutiyek diyalogê dê xuya bibe, li wir divê hûn li ser “Skrîptên LUA …” bikirtînin.
Dê bikarhêner peldanka “Skrîptên berdest” bibîne. Li milê rastê yê jorîn bişkoka Add heye. Wê bikirtînin û li pelê bi kodê bigerin. Ew li vir “Script_N1.lua” ye.
Dema vekirina belgeyek, girîng e ku hûn rêzika “Script_N1.lua” hilbijêrin (divê ew li ser ajokera C were hilanîn), dûv re, li jêr, bişkoka “Run” bikirtînin.
Paceyek nû dê yekser xuya bibe.
Ji bo ku hûn ji van tîpên nefêmkirî dûr bisekinin, hûn hewce ne ku biçin bernameya NotePad. Di mîhengan de beşa “Encodings” heye, li ser bikirtînin. Dûv re navnîşek tabloyan dê xuya bibe, di nav wan de divê hûn li ser “Convert to ANSI” bikirtînin.
Piştre, divê hûn li ser bişkoja tomarkirinê bikirtînin û vegerin pencereya peyamê. Dê jixwe nivîsek din hebe, û ne rêzek bi xêzikan.
Meriv çawa li LUA-yê di termînala QUIK de bername dike
3 awayên populer hene:
- Her pelê nivîsê tê afirandin, li wir divê pêveka .lua were danîn. Piştre, hûn hewce ne ku edîtorê vekin û kodê binivîsin. Piştî destpêkirinê, algorîtmayek wusa dê tenê carekê were darve kirin. Hûn dikarin wê bi destan bêdawî bimeşînin. Hûn dikarin wê ji bo hesabek yek-car a hin agahdariyê bikar bînin.
- Di skrîpta Lua bixwe de, hûn hewce ne ku fonksiyonek bi navê main() biafirînin . Wekî din, di heman fonksiyonê de, hûn hewce ne ku koda nivîskî têxin nav xwe. Û fonksiyona xew() ji bo sekinandina demkî ya nivîsarê an, berevajî, ji nû ve destpêkirina wê kêrhatî ye. Ango, heke hûn fonksiyona sereke () çalak bikin, û dûv re fonksiyona xewê () têxin, hûn ê bikaribin bi frekansa navberek demkî ya taybetî re hesaban bi dest bixin.
- Di bernameyek QLUA de, hûn dikarin modela pêşkeftina bûyer-rêveber bikar bînin. Bi vî rengî, naha ne hewce ye ku di yek fonksiyonê de guheztinan “teşhîs bikin” û ji ber vê yekê, emrên jêrîn bicîh bînin.
Tête pêşniyar kirin ku rêbaza paşîn bi hûrgulî were analîz kirin. Ji bo birêvebirina bûyerek taybetî, divê hûn fonksiyonek di skrîptekê de di Quick de binivîsin. Hûn dikarin nexşeya jêrîn bikar bînin:
Nivîsarek LUA dikare ji çend fonksiyonên bi navên taybetî pêk were: peyman, quotes, û hwd. Pêdivî ye ku hûn di bernameyê de beşa “Tablo” bibînin, biçin “Lua”. Dê qutiyek diyalogê li wir xuya bibe û rêzika “Skrîptên berdest” dê xuya bibe, li ser bikirtînin. Piştre, li ser tabloya “Destpêkirin” bikirtînin. Dûv re pêvajo û pêkanîna
fonksiyona sereke () ya mecbûrî tê . Dûv re, hûn hewce ne ku
is_run ragihînin , fonksiyon dê nirxa
rastîn hebeheta ku bikarhêner bişkoka Stop Script çalak bike. Dûv re guhêrbara fonksiyonê di hundurê OnStop() de diçe moda derewîn. Piştî wê, fonksiyona sereke () diqede, û skrîpt bixwe disekine. Divê skrîpta nivîskî were hilanîn û xebitandin. Dema ku danûstendinan çêbike, bikarhêner dê daneyên ji bo her lotikê û mîqdara paşîn a danûstendinan bibîne.
Ji bo ku QLua di Quick-ê de bimeşîne, hûn hewce ne ku wê veguhezînin peldankek nû ya li ser PC-ya xwe. Hûn dikarin her tiştê ku hûn dixwazin jê re bibêjin, mînakî, “MyLua”. Hemî nivîsarên Lua dê li wir werin hilanîn. Piştî ku hûn ketin QUIK, hûn hewce ne ku beşa “Xizmet” vekin, dûv re li ser tabloya “Skrîptên Lua” bikirtînin. Di pencereya ku vedibe, bişkoka “Lê zêde bike” çalak bike. Dûv re hûn hewce ne ku skrîptê hilbijêrin û vekin. Ew ê di beşa “Skrîptên Daxistin” de be. Dûv re divê hûn rêza skrîptê ronî bikin û “Run” bikirtînin. Ji bo rawestandina senaryoyê, tenê bikirtînin “Stop”.
Meriv çawa skrîptek LUA li termînalek bazirganiyê saz dike
Termînalên perwerdehî û standard ji bo sazkirina robotek bazirganiyê heman algorîtmayê hewce dike:
- Pêdivî ye ku di menuya jorîn a termînalê de li ser beşa “Xizmet” bikirtînin.
- Dûv re, bişkoka “Luxanivîsên LUA” di qutiya diyalogê ya daketî de bibînin û bikirtînin:
- Wê demê, divê pencereya “Skrîptên Berdest” xuya bibe. Dûv re, divê hûn bişkoka “Lê zêde bike” çalak bikin û pelê robotê bazirganiyê yê pêwîst hilbijêrin.
Daneyên ji nexşeya Lua-yê bi skrîptek di termînala Quik-ê de digirin: https://youtu.be/XVCZAnWoA8E Lua ji bo fêrbûna bernamekirinê û ji bo serfiraziya pêşerojê vebijarkek girîng e. Ya sereke ew e ku meriv tenê li ser xwendina teoriyê nesekine. Çêtir e ku meriv materyalê bi pratîkkirina domdar fêr bibe. Piştî demek diyar, pêşdebir dê dest bi pêşveçûnê bike û bikaribe hilbera xweya hêja biafirîne.