Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Hello a h-uile duine!

O chionn ghoirid, Waves Labs ainmeachadh farpais airson luchd-leasachaidh a tha coisrigte ri sgaoileadh an leudachadh cànain cùmhnant smart RIDE airson tagraidhean dì-mheadhanaichte Ride4Dapps a-steach don lìonra deuchainn!

Thagh sinn a’ chùis DAO air sgàth Ventuary planaichean gus dApps a leasachadh le gnìomhan sòisealta: bhòtadh, togail-airgid, riaghladh earbsa, msaa.
Thòisich sinn le eisimpleir shìmplidh ann an Seiseanan Q&A agus a-staigh RIGH IDE - eisimpleir le sporan co-roinnte.

Bheir sinn sùil air an eisimpleir seo, dèan deuchainn air barailean agus coimhead air cuid de rudan neònach:

Biodh Alice againn - sealbhadair dApp
Tha Boob agus Cooper nan com-pàirtichean Alice, co-stèidheadairean Alice-BC DAO
Tha Neli na neach-seilbh gnìomhachais a dh’ fheumas maoineachadh
Banca - banca a bhios a 'sgaoileadh comharran

Ìre 1. Tòiseachadh cothromachadh

Gus comharran fhaighinn air lìonra deuchainn nan tonn, feumaidh tu fios a chuir fauc agus comharraich an seòladh airson an cuir thu comharran.
Gheibh thu an seòladh san IDE le bhith a’ fosgladh mion-fhiosrachadh a’ chunntais agad.
Bidh sinn a’ soilleireachadh Bank 10 WAVES. An uairsin nì sinn cinnteach gun do ràinig iad tron ​​​​bhrobhsair bloc agus malairt: ath-sgrùdaiche

A-nis leig dhuinn comharran bhon bhanca a sgaoileadh chun chòrr de na com-pàirtichean. (Notaichean: Chan eil a h-uile gnothach air lìonra nan tonn an-asgaidh, agus mar sin feumar cothromachadh adhartach as ìsle airson a h-uile com-pàirtiche gus gnothaichean a dhèanamh).

1 WAVES = 100000000 aonad (tonnan), leis nach urrainn suimean a bhith ach iomlan
0.01 WAVES (Cìs Gluasaid) = 1000000

Banca -> [3 WAVES] -> Alice, tro TransferTransaction (Seòrsa: 4).

Bidh sinn a’ dèanamh cinnteach gu bheil an env.SEED às a bheil na gnothaichean air an soidhnigeadh a’ freagairt ris a’ Bhanca againn:
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Mura h-eil abairt sìol co-ionnan agad, dìreach gluais thuige ann an taba nan Cunntasan agus thoir sùil a-rithist.
Às deidh seo, bidh sinn a’ cruthachadh, ag ainmeachadh agus a’ soidhnigeadh malairt airson gluasad 3 WAVES Alice.
Gheibh thu a-mach cuideachd dàta Alice tro chaochladair cunntasan env. Bidh an àireamhachadh a’ tòiseachadh bho 0, agus mar sin tha Alice na chunntasan [1].
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

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

Faodar an toradh fhaicinn cuideachd sa bhrobhsair, thèid ceangal thuige a thilleadh thugainn dìreach às deidh a chuir gu bàs gnothaichean.

Bidh sinn a’ dèanamh cinnteach gu bheil cothromachadh Alice air ath-lìonadh le 3 WAVES, agus tha an cothromachadh banca fhathast aig 10 - 3 - 0.01 = 0.699.
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Bidh sinn a’ cur Boob agus Cooper 3 WAVES gach fear, agus Neli, Xena agus Mark 0.2 WAVES gach fear san aon dòigh.
(Notaichean: Rinn sinn mearachd aon charactar agus chuir sinn Neli 0.02 WAVES. Bi faiceallach!)

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

Às deidh dhuinn cothromachadh nan com-pàirtichean uile ath-lìonadh, chì sinn:
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Ìre 2. Cruthaich cunntas dApp

Dh’ aontaich sinn gur i Alice neach-cruthachaidh agus sealbhadair an tagraidh dì-mheadhanaichte.
Rach gu Cunntasan, suidhich e mar SEED agus thoir sùil air env.SEED a’ maidseadh Alice.

Feuchaidh sinn ris an sgriobt (cùmhnant) as sìmplidh a stàladh air cunntas Alice.
Tha fiosan snasail ann an Waves mar ro-innse a tha a’ toirmeasg no a’ leigeil le seòrsa sam bith de ghnìomhachd a-muigh tachairt fo chumhachan sònraichte. Anns a 'chùis seo, tha an suidheachadh seo AN-ASGAIDH. Tha còd cùmhnant fìor. Cuir fòn gu cleachdadh ().

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Cìs airson gach gnothach setScript 1400000/100000000 = 0.014 WAVES. Tha 2.986 WAVES air fhàgail aig Alice air a cothromachadh.

Feuchaidh sinn a-nis ri loidsig cùmhnant smart nas iom-fhillte a chuir a-steach air cunntas Alice, air a mhìneachadh ann an eisimpleir

Rothaich 4 Dapps a-nis a’ toirt a-steach 2 sheòrsa nota ùr:

  1. @Callable(i) - a’ gabhail mar paramadair i, dàta mun chunntas ris an canar / a chuir ainm ris a’ ghnothach. Is e toradh a’ ghnìomh seo a tha a’ dearbhadh an atharrachaidh ann an staid a’ chunntais dApp. Faodaidh cunntasan eile gnothaichean a chruthachadh agus gnìomhan a chuir an gnìomh leis a’ chomharra seo agus staid a’ chunntais dApp atharrachadh.
  2. @Dearbhaiche(tx) - Dearbhaiche gnìomh le paramadair tx malairt. A’ freagairt ris an loidsig ro-innse bho RIDE. Is ann san abairt seo as urrainn dhut tuilleadh atharrachaidhean a cheadachadh no a thoirmeasg air loidsig cùmhnantan snasail air a’ chunntas dApp.

Dèanamaid dApp cunntas mar wallet cumanta airson a h-uile com-pàirtiche.
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Gus faighinn a-mach dè an cùmhnant a tha gnìomhach air do chunntas an-dràsta, faodaidh tu lethbhreac a dhèanamh den chòd base64 den chùmhnant snasail anns an rannsachair bloc agus aithnich e le bhith a’ cleachdadh decompiler (mar eisimpleir)
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Bidh sinn a’ dèanamh cinnteach gu bheil loidsig a’ chùmhnant snasail a rèir na tha sinn a’ dùileachadh.
Tha 2.972 WAVES air fhàgail aig Alice air a cothromachadh.

Bidh an dApp seo a’ cumail sùil air na tha gach com-pàirtiche a’ cur ris a’ mhaoin chumanta tro uidheamachd malairt dàta - DataEntry (iuchrach gnàthach, suim ùr), far a bheil currentKey an cunntas a tha a 'gairm an gnìomh tasgaidh, agus newAmount luach a' chothromachadh replenished.

Bidh Boob agus Cooper a’ dèanamh an tasgaidhean don chunntas dApp le 1 WAVES.
Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Bidh sinn a’ dèanamh mearachd agus chan eil an gnothach a’ dol troimhe. Leis, a dh ’aindeoin gu robh sinn cinnteach gu robh sinn a’ dèanamh malairt às leth Bob, rinn sinn mearachd anns a ’chlàr-amais agus chomharraich sinn cunntas banca aig nach eil cùmhnant snasail. 'S fhiach toirt fa-near puing chudromach an seo - tha cìs ann airson oidhirpean neo-shoirbheachail gus gnothaichean a thòiseachadh chan urrainn a thoirt air falbh! Tha 2.972 WAVES air fhàgail aig Alice air a cothromachadh. Tha 3 tonnan aig Bob.

Chuir Bob 1 WAVES gu dApp Account.

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

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Tha 1.99 WAVES air fhàgail aig Bob. Is e sin, phàigh Bob coimisean 0.01 WAVES

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Bha 2.972 WAVES aig Alice air a cothromachadh, a-nis is e 3.972 a th’ ann. Chaidh malairt a chlàradh cuideachd air cunntas Alice, ach cha deach coimisean sam bith a phàigheadh ​​​​bhon Chunntas dApp (Alice).
Às deidh dha Cooper an cunntas ath-lìonadh, thàinig cothromachadh Alice gu 4.972 WAVES.

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Gheibh thu a-mach cò aig a bheil sealbh air cia mheud WAVES anns a’ wallet cumanta anns an rannsachair bloca anns an taba Dàta.

Dh'atharraich Cooper a inntinn mu bhith a 'fàgail na tha de 1 WAVES air a' mhàileid choitcheann agus chuir e roimhe leth den dàimh a tharraing air ais. Gus seo a dhèanamh, feumaidh e an gnìomh tarraing air ais a ghairm.

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Ach, bha sinn ceàrr a-rithist, leis gu bheil crìochan gu tur eadar-dhealaichte aig a’ ghnìomh tarraing air ais agus ainm-sgrìobhte eadar-dhealaichte. Nuair a dhealbhaicheas tu cùmhnantan snasail air RIDE4DAPPS bu chòir dhut aire a thoirt don phuing seo

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Tha 2.48 WAVES air a’ chothromachadh aige a-nis. A rèir sin, 3 WAVES - 1 - 0.01, agus an uair sin + 0.5 - 0.01. A rèir sin, tha gach gairm gu tasgadh agus tarraing air ais a’ cosg 0.01 WAVES. Mar thoradh air an sin, dh’ atharraich na h-inntrigidhean ann an clàr luchd-seilbh dApps mar a leanas.

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Cho-dhùin Bob cuideachd airgead a tharraing air ais bhon wallet co-roinnte, ach rinn e mearachd agus dh’ fheuch e ri 1.5 WAVES a tharraing air ais.

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Ach, bha seic aig a’ chùmhnant smart airson an t-suidheachaidh seo.

Tha Xena na sgamair, dh'fheuch i ri 1 WAVES a tharraing air ais bhon chunntas iomlan.

Ag ionnsachadh cùmhnantan snasail Waves a sgrìobhadh air RIDE agus RIDE4DAPPS. Pàirt 1 (wallet ioma-chleachdaiche)

Cha do dh'obraich e a-mach dhi idir.

Anns an ath phàirt, bheir sinn sùil air cùisean nas iom-fhillte co-cheangailte ri neo-fhoirfeachd Alice dApp Account.

Source: www.habr.com

Cuir beachd ann