Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Miarahaba ny rehetra!

Vao haingana, Waves Labs nanambara fifaninanana ho an'ny mpamorona natokana ho an'ny famoahana ny fanitarana ny teny fifanarahana marani-tsaina RIDE ho an'ny rindranasa itsinjaram-pahefana Ride4Dapps ao amin'ny tambajotra andrana!

Nisafidy ny raharaha DAO izahay satria Ventuary mikasa ny hamolavola dApps miaraka amin'ny asa sosialy: fifidianana, fanangonam-bola, fitantanana fitokisana, sns.
Nanomboka tamin'ny ohatra tsotra izahay tamin'ny Fivoriana Q&A ary ao RIDE IDE - ohatra amin'ny kitapom-bola iombonana.

Andeha hojerentsika ity ohatra ity, andramo ny vinavina ary jereo ny zavatra hafahafa:

Avelao izahay hanana Alice - dApp Owner
Boob sy Cooper dia mpiara-miasa amin'i Alice, mpiara-manorina ny Alice-BC DAO
I Neli dia tompona orinasa mila famatsiam-bola
Bank - banky izay mizara famantarana

Dingana 1. Fanombohana ny mizana

Mba hahazoana mari-pamantarana amin'ny tambajotra fitsapana onja dia mila mifandray ianao faucet ary manondro ny adiresy handefasana famantarana.
Azonao atao ny mahita ny adiresy ao amin'ny IDE amin'ny fanokafana ny antsipirian'ny kaontinao.
Asongadinay ny Bank 10 WAVES. Avy eo dia manamarina izahay fa tonga tamin'ny alΓ lan'ny navigateur block sy transaction izy ireo: mpanome hevitra

Andeha isika hizara famantarana avy amin'ny banky ho an'ny mpandray anjara sisa. (Fanamarihana: Tsy maimaim-poana ny fifampiraharahana rehetra ao amin'ny tambajotra waves, noho izany dia ilaina ny fifandanjana tsara kely indrindra ho an'ny mpandray anjara rehetra amin'ny fifampiraharahana).

1 WAVES = 100000000 units (wavelets), satria tsy misy afa-tsy integer ny isa
0.01 WAVES (Saram-pandraharahana) = 1000000

Bank -> [3 WAVES] -> Alice, amin'ny TransferTransaction (karazana: 4).

Izahay dia manamarina fa ny env.SEED izay nanaovana sonia ny fifampiraharahana dia mifanaraka amin'ny Banky:
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)
οΏΌ
Raha tsy manana fehezanteny voa mifanentana ianao dia midira ao amin'ny tabilao Kaonty ary jereo indray.
Aorian'izany dia mamorona, manambara ary manao sonia fifanarahana ho an'ny famindrana ny 3 WAVES Alice.
Azonao atao ihany koa ny mahita ny angon'i Alice amin'ny alΓ lan'ny fari-piadidiana env.accounts. Manomboka amin'ny 0 ny fanisana, ka i Alice dia env.accounts[1].
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

broadcast(transfer({recipient:address(env.accounts[1]), amount: 300000000, fee: 1000000}))

Ny vokatra dia azo jerena ao amin'ny navigateur ihany koa, ny rohy mankany aminy dia haverina amintsika avy hatrany aorian'ny famonoana varotra.

Ataovy azo antoka fa feno 3 WAVES ny fifandanjan'i Alice, ary mijanona amin'ny 10 - 3 - 0.01 = 0.699 ny fifandanjan'ny banky.
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Mandefa WAVES 3 avy i Boob sy Cooper ary mitovy amin'izany koa i Neli, Xena ary Mark 0.2.
(Fanamarihana: Nanao fahadisoana tarehintsoratra iray izahay ary nandefa an'i Neli 0.02 WAVES. Mitandrema!)

broadcast(transfer({recipient:address(env.accounts[4]), amount: 20000000, fee: 1000000}))

Aorian'ny famenoana ny fifandanjan'ny mpandray anjara rehetra dia hitantsika:
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Dingana 2. Mamorona kaonty dApp

Nifanaiky izahay fa i Alice no mpamorona sy tompon'ny fampiharana itsinjaram-pahefana.
Mandehana any amin'ny Accounts, apetraho ho SEED ary jereo env.SEED mifanandrify amin'i Alice.

Andao hiezaka hametraka ny script (fifanarahana) tsotra indrindra amin'ny kaontin'i Alice.
Ny fifandraisana marani-tsaina ao amin'ny Waves dia vinavina izay mandrara na mamela ny karazana fifampiraharahana mivoaka amin'ny fepetra sasany. Amin'ity tranga ity, ity fepetra ity dia FOANA. Marina ny fehezan-dalΓ na momba ny fifanarahana. Call deploy().

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Vidin'ny fifanakalozana Script 1400000/100000000 = 0.014 WAVES. Manana WAVES 2.986 sisa i Alice amin'ny fifandanjany.

Andeha isika izao hanandrana hametraka lojika fifanarahana marani-tsaina sarotra kokoa amin'ny kaonty Alice, voalaza ao OHATRA

Ride4Dapps misy karazana fanamarihana 2 vaovao izao:

  1. @Antsoina (i) — maka ho paramètre i, angona momba ny kaonty antsoina/nanasonia ny fifampiraharahana. Ny vokatr'io asa io no mamaritra ny fiovan'ny toetry ny kaonty dApp. Ny kaonty hafa dia afaka mamorona fifampiraharahana sy manatanteraka asa miaraka amin'ity fanamarihana ity ary manova ny toetry ny kaonty dApp.
  2. @Verifier(tx) - Fanamarinana fifampiraharahana miaraka amin'ny paramètre tx transaction. Mifanaraka amin'ny lojika predicate avy amin'ny RIDE. Ao anatin'io fitenenana io no ahafahanao mamela na mandrara fanovana bebe kokoa amin'ny lojikan'ny fifanarahana marani-tsaina amin'ny kaonty dApp.

Andao hanao dApp kaonty ho toy ny kitapom-bola iombonana ho an'ny mpandray anjara rehetra.
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Mba hanamarinana hoe iza amin'ireo fifanarahana mavitrika amin'izao fotoana izao ao amin'ny kaontinao dia azonao atao ny mandika ny code base64 amin'ny fifanarahana marani-tsaina ao amin'ny explorer sakana ary fantaro izany amin'ny fampiasana decompiler (ohatra)
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Ataovy azo antoka fa mifanaraka amin'izay antenainay ny lojikan'ny fifanarahana marani-tsaina.
Manana 2.972 WAVES i Alice amin'ny fifandanjany.

Ity dApp ity dia manara-maso ny habetsahan'ny mpandray anjara tsirairay mandray anjara amin'ny tahirim-bola iombonana amin'ny alΓ lan'ny mekanika fifanakalozana data - DataEntry (currentKey, newAmount), izay ny currentKey no kaonty miantso ny asa fametrahana, ary ny newAmount dia ny sandan'ny fifandanjana feno.

Boob sy Cooper dia manao petra-bola amin'ny kaonty dApp miaraka amin'ny 1 WAVES.
Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Manao fahadisoana izahay ary tsy mandeha ny fifampiraharahana. Satria, na dia resy lahatra aza izahay fa nanao fifampiraharahana tamin'ny anaran'i Bob, dia nanao fahadisoana teo amin'ny fanondroana izahay ary nanondro kaonty amin'ny banky tsy manana fifanarahana marani-tsaina. Tsara ny manamarika teboka manan-danja iray eto - misy sarany ho an'ny andrana tsy nahomby hanombohana fifampiraharahana tsy azo esorina! Manana 2.972 WAVES i Alice amin'ny fifandanjany. Manana WAVES 3 i Bob.

Nandefa WAVES 1 tany amin'ny kaonty dApp i Bob.

broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:"deposit",args:[]}, payment: [{amount: 100000000, asset:null }]}))

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Manana WAVES 1.99 i Bob. Izany hoe, nandoa komisiona 0.01 WAVES i Bob

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Nanana WAVES 2.972 i Alice tamin'ny fifandanjany, izao dia 3.972. Nisoratra anarana tao amin'ny kaonty Alice ihany koa ny fifampiraharahana, saingy tsy nisy komisiona nalaina avy amin'ny kaonty dApp (Alice).
Taorian'ny namenoan'i Cooper ny kaonty ihany koa dia lasa 4.972 WAVES ny fifandanjan'i Alice.

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Azonao atao ny mahita hoe iza no tompon'ny WAVES firy ao amin'ny kitapom-bola iombonana ao amin'ny mpikaroka sakana ao amin'ny tabilao Data.

Niova hevitra i Cooper momba ny hamela ny habetsaky ny 1 WAVES ao amin'ny kitapom-bola ankapobeny ary nanapa-kevitra ny hanaisotra ny antsasaky ny fifandraisana. Mba hanaovana izany, dia tsy maintsy miantso ny fisintonana asa.

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Na izany aza, diso indray izahay, satria ny fiasan'ny fisintahana dia manana mari-pamantarana hafa sy sonia hafa. Rehefa mamolavola fifanarahana marani-tsaina amin'ny RIDE4DAPPS ianao dia tokony handinika tsara an'io teboka io

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Manana 2.48 WAVES amin'izao fotoana izao i Cooper. Noho izany, 3 WAVES - 1 - 0.01, ary avy eo + 0.5 - 0.01. Araka izany, ny fiantsoana tsirairay hametrahana sy hisintonana dia mitentina 0.01 WAVES. Vokatr'izany dia niova toy izao ny fidirana ao amin'ny latabatra tompon'ny dApps.

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Nanapa-kevitra ihany koa i Bob fa haka vola amin'ny kitapom-bola iombonana, saingy nanao fahadisoana ary nanandrana nanala 1.5 WAVES.

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Na izany aza, ny fifanarahana smart dia nanamarina izany toe-javatra izany.

Mpisoloky i Xena, nanandrana nanala WAVES 1 tamin'ny kaonty manontolo izy.

Mianara manoratra fifanarahana smart Waves amin'ny RIDE sy RIDE4DAPPS. Fizarana 1 (Pakerin'ny mpampiasa maro)

Tsy nety taminy koa izany.

Amin'ny ampahany manaraka dia hijery olana sarotra kokoa mifandraika amin'ny tsy fahatanterahan'ny kaonty Alice dApp isika.

Source: www.habr.com

Add a comment