Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Dia duit gach duine!

Níos déanaí, Waves Labs D'fhógair iomaíocht d'fhorbróirí atá tiomanta do leathnú teanga conartha cliste RIDE a scaoileadh le haghaidh feidhmchláir díláraithe Ride4Dapps isteach sa líonra tástála!

Roghnaigh muid an cás DAO toisc Ventura pleananna chun dApps a fhorbairt le feidhmeanna sóisialta: vótáil, tiomsú airgid, bainistíocht iontaobhais, etc.
Thosaigh muid le sampla simplí i Seisiúin ceisteanna agus freagraí agus RIDE IDE - sampla le sparán roinnte.

Breathnaímid ar an sampla seo, déanaimis tástáil ar hipitéisí agus breathnaímis ar roinnt aisteacha:

Lig dúinn Alice - Úinéir dApp
Is comhpháirtithe Alice iad Boob agus Cooper, comhbhunaitheoirí Alice-BC DAO
Is úinéir gnó í Neli a bhfuil maoiniú ag teastáil uaithi
Banc - banc a dháileann comharthaí

Céim 1. Iarmhéideanna a thionscnamh

Chun comharthaí a fháil ar líonra tástála na dtonnta, ní mór duit dul i dteagmháil faucet agus cuir in iúl an seoladh chun comharthaí a chur chuige.
Is féidir leat an seoladh a aimsiú san IDE trí shonraí do chuntais a oscailt.
Cuirimid béim ar 10 dTonn an Bhainc. Ansin seiceálaimid gur tháinig siad tríd an mbrabhsálaí bloc agus idirbheart: athbhreithnitheoir

Anois déanaimis comharthaí ón mbanc a dháileadh ar an gcuid eile de na rannpháirtithe. (Nótaí: Níl gach idirbheart ar líonra na dtonnta saor in aisce, agus mar sin tá gá le híosmhéid de chothromaíocht dhearfach do gach rannpháirtí chun idirbhearta a dhéanamh).

1 WAVES = 100000000 aonad (tonnlets), toisc nach féidir méideanna a bheith ach ina slánuimhir
0.01 WAVES (Táille Idirbheart) = 1000000

Banc -> [3 TONNTA] -> Alice, trí TransferTransaction (Cineál: 4).

Déanaimid seiceáil go dtagann an env.SEED óna sínítear idirbhearta lenár mBanc:
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Mura bhfuil frása síl meaitseála agat, athraigh chuige sa chluaisín Cuntais agus seiceáil arís.
Tar éis seo, cruthaímid, fógraímid agus sínímid idirbheart le haghaidh aistriú 3 WAVES Alice.
Is féidir leat sonraí Alice a fháil amach freisin tríd an athróg env.accounts. Tosaíonn an t-uimhriú ó 0, mar sin is cuntais imchuacha í Alice[1].
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

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

Is féidir an toradh a fheiceáil sa bhrabhsálaí freisin, cuirfear nasc chuige ar ais chugainn díreach tar éis é a fhorghníomhú idirbhearta.

Déanaimid cinnte go ndéantar iarmhéid Alice a athlánú faoi 3 TONNTA, agus fanann an t-iarmhéid bainc ag 10 - 3 - 0.01 = 0.699.
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Seolaimid Boob agus Cooper 3 TONN an ceann, agus Neli, Xena agus Mark 0.2 TONN an ceann ar an mbealach céanna.
(Nótaí: Rinneamar earráid aon charachtar agus sheolamar Neli 0.02 WAVES. Bí cúramach!)

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

Tar éis iarmhéideanna na rannpháirtithe go léir a athlánú, feicimid:
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Céim 2. Cruthaigh cuntas dApp

D’aontaíomar go mbeadh Alice ina cruthaitheoir agus ina húinéir ar an bhfeidhmchlár díláraithe.
Téigh go Cuntais, socraigh mar SEED é agus seiceáil env.SEED mar a oireann Alice.

Déanaimis iarracht an script (conradh) is simplí a shuiteáil ar chuntas Alice.
Is réamhaithrisí iad teagmhálacha cliste in Waves a chuireann cosc ​​ar aon chineál idirbheart amach nó a ligeann dó tarlú faoi choinníollacha áirithe. Sa chás seo, tá an coinníoll seo i gcónaí. Tá cód conartha fíor. Imscaradh glaonna ().

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Táille in aghaidh an idirbhirt setScript 1400000/100000000 = 0.014 WAVES. Tá 2.986 WAVES fágtha ag Alice ar a comhardú.

Déanaimis iarracht anois loighic conartha cliste níos casta a shuiteáil ar chuntas Alice, a thuairiscítear i sampla

Ride4Dapps Áirítear anois 2 chineál nótaí nua:

  1. @Callable(i) — glacann sé mar pharaiméadar i, sonraí faoin gcuntas ar a dtugtar/shínigh an t-idirbheart. Is é toradh na feidhme seo a chinneann an t-athrú ar staid an chuntais dApp. Is féidir le cuntais eile idirbhearta a chruthú agus feidhmeanna a fhorghníomhú leis an nóta seo agus staid an chuntais dApp a athrú.
  2. @Fíoraitheoir(tx) — Fíoraitheoir idirbhirt le paraiméadar tx an idirbhirt. Freagraíonn sé don loighic tuar ó RIDE. Is sa léiriú seo is féidir leat athruithe breise a cheadú nó a thoirmeasc ar loighic na gconarthaí cliste ar an gcuntas dApp.

Déanaimis dApp cuntas mar sparán coiteann do gach rannpháirtí.
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Chun a sheiceáil cén conradh atá gníomhach faoi láthair ar do chuntas, is féidir leat cód base64 an chonartha cliste a chóipeáil sa bhloctaiscéalaí agus é a aithint le dí-chomhbhailitheoir (mar shampla)
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Déanaimid cinnte go bhfuil loighic an chonartha chliste ag teacht leis an méid a mbeimid ag súil leis.
Tá 2.972 WAVES fágtha ag Alice ar a comhardú.

Coinníonn an dApp seo súil ar an méid a chuireann gach rannpháirtí leis an gcomhchiste trí mheicníocht idirbheart sonraí — DataEntry(currentKey, newAmount), i gcás gurb é currentKey an cuntas a ghlaonn an fheidhm taisce, agus is é newAmount luach an iarmhéid athlíonta.

Déanann Boob agus Cooper a gcuid taiscí chuig an gcuntas dApp le 1 WAVES.
Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Déanaimid botún agus ní théann an t-idirbheart tríd. Ós rud é, in ainneoin go raibh muid cinnte go raibh muid ag déanamh idirbheart ar son Bob, rinneamar botún san innéacs agus léirigh muid cuntas Bainc nach bhfuil conradh cliste aige. Is fiú pointe tábhachtach a thabhairt faoi deara anseo - tá táille ar iarrachtaí nár éirigh leo idirbhearta a thionscnamh ní féidir é a bhaint! Tá 2.972 WAVES fágtha ag Alice ar a comhardú. Tá 3 TONNTA ag Bob.

Sheol Bob 1 WAVES chuig Cuntas dApp.

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

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Tá 1.99 WAVES fágtha ag Bob. Is é sin, d'íoc Bob 0.01 WAVES coimisiún

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Bhí 2.972 WAVES ag Alice ar a comhardú, is é 3.972 é anois. Cláraíodh idirbheart freisin ar chuntas Alice, ach níor gearradh aon choimisiún as Cuntas dApp (Alice).
Tar éis do Cooper an cuntas a athlánú freisin, b'ionann iarmhéid Alice agus 4.972 WAVES.

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Is féidir leat a fháil amach cé leis cé mhéad TONNTA atá sa sparán coitianta sa taiscéalaí bloc sa chluaisín Sonraí.

D'athraigh Cooper a intinn faoin méid 1 WAVES a fhágáil ar an sparán ginearálta agus chinn sé leath den chleamhnas a tharraingt siar. Chun seo a dhéanamh, caithfidh sé an fheidhm aistarraingthe a ghlaoch.

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Mar sin féin, bhí muid mícheart arís, ós rud é go bhfuil paraiméadair go hiomlán difriúil ag an bhfeidhm tarraingt siar agus síniú difriúil. Agus tú ag dearadh conarthaí cliste ar RIDE4DAPPS ba cheart duit aird a thabhairt ar an bpointe seo

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Tá 2.48 TONN ag Cooper ar a chlár comhardaithe anois. Dá réir sin, 3 TONNTA - 1 - 0.01, agus ansin + 0.5 - 0.01. Dá réir sin, cosnaíonn gach glao chun taisce agus aistarraingt 0.01 TONNTA. Mar thoradh air sin, d'athraigh na hiontrálacha sa tábla úinéirí dApps mar seo a leanas.

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Chinn Bob freisin roinnt airgid a tharraingt siar ón sparán roinnte, ach rinne sé botún agus rinne sé iarracht 1.5 TONN a tharraingt siar.

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Mar sin féin, bhí seiceáil ag an gconradh cliste don chás seo.

Is scammer í Xena, rinne sí iarracht 1 TONNTA a tharraingt siar ón gcuntas iomlán.

Foghlaim conas conarthaí cliste Waves a scríobh ar RIDE agus RIDE4DAPPS. Cuid 1 (sparán ilúsáideora)

Níor oibrigh sé amach di ach an oiread.

Sa chéad chuid eile, féachfaimid ar shaincheisteanna níos casta a bhaineann le neamhfhoirfeacht Cuntas Alice dApp.

Foinse: will.com

Add a comment