Kupeleka mkataba-erevu wako wa kwanza
Nadhani una msisimko kama sisi kupeleka na kuingiliana na mkataba-erevu wako wa kwanza kwenye mnyororo wa bloku wa Ethereum.
Usijali, kwa kuwa ni mkataba-erevu wetu wa kwanza, tutaupeleka kwenye mtandao wa majaribio wa ndani kwa hivyo haitakugharimu chochote kupeleka na kucheza nao kadri upendavyo.
Kuandika mkataba wetu
Hatua ya kwanza ni kutembelea Remix (opens in a new tab) na kuunda faili mpya. Kwenye sehemu ya juu kushoto ya kiolesura cha Remix ongeza faili mpya na uweke jina la faili unalotaka.
Katika faili mpya, tutabandika msimbo ufuatao.
1// SPDX-License-Identifier: MIT2pragma solidity >=0.5.17;3
4contract Counter {5
6 // Kigezo cha umma cha aina ya nambari kamili isiyo na alama ili kuweka idadi ya hesabu7 uint256 public count = 0;8
9 // Kitendakazi kinachoongeza kaunta yetu10 function increment() public {11 count += 1;12 }13
14 // Kipataji kisicho lazima cha kupata thamani ya hesabu15 function getCount() public view returns (uint256) {16 return count;17 }18
19}Ikiwa umezoea programu unaweza kukisia kwa urahisi kile programu hii inafanya. Hapa kuna maelezo mstari kwa mstari:
- Mstari wa 4: Tunafafanua mkataba wenye jina la
Counter. - Mstari wa 7: Mkataba wetu unahifadhi nambari kamili moja isiyo na alama inayoitwa
countinayoanzia 0. - Mstari wa 10: Kitendakazi cha kwanza kitabadilisha hali ya mkataba na kuongeza kigezo chetu cha
count. - Mstari wa 15: Kitendakazi cha pili ni kipataji tu ili kuweza kusoma thamani ya kigezo cha
countnje ya mkataba-erevu. Kumbuka kwamba, kwa vile tulifafanua kigezo chetu chacountkama cha umma hii si lazima lakini inaonyeshwa kama mfano.
Hayo ndiyo yote kwa mkataba-erevu wetu wa kwanza rahisi. Kama unavyoweza kujua, inaonekana kama darasa kutoka kwa lugha za OOP (Upangaji Unaolenga Kitu) kama Java au C++. Sasa ni wakati wa kucheza na mkataba wetu.
Kupeleka mkataba wetu
Kwa vile tumeandika mkataba-erevu wetu wa kwanza kabisa, sasa tutaupeleka kwenye mnyororo wa bloku ili tuweze kucheza nao.
Kupeleka mkataba-erevu kwenye mnyororo wa bloku ni kutuma tu muamala wenye msimbo wa mkataba-erevu ulioandaliwa bila kubainisha wapokeaji wowote.
Kwanza tutaandaa mkataba kwa kubofya aikoni ya kuandaa iliyo upande wa kushoto:
Kisha bofya kwenye kitufe cha kuandaa:
Unaweza kuchagua chaguo la “Kuandaa Kiotomatiki” ili mkataba uwe unaandaliwa kila wakati unapohifadhi maudhui kwenye kihariri cha maandishi.
Kisha nenda kwenye skrini ya "peleka na endesha miamala":
Ukishakuwa kwenye skrini ya "peleka na endesha miamala", hakikisha mara mbili kwamba jina la mkataba wako linaonekana na ubofye Peleka. Kama unavyoona juu ya ukurasa, mazingira ya sasa ni “JavaScript VM” hii inamaanisha kuwa tutapeleka na kuingiliana na mkataba-erevu wetu kwenye mnyororo wa bloku wa majaribio wa ndani ili kuweza kupima haraka zaidi na bila ada zozote.
Mara tu unapobofya kitufe cha “Peleka”, utaona mkataba wako ukionekana chini. Bofya mshale ulio upande wa kushoto ili kuipanua ili tuone maudhui ya mkataba wetu. Hiki ni kigezo chetu cha counter, kitendakazi chetu cha increment() na kipataji cha getCounter().
Ukibofya kitufe cha count au getCount, kwa kweli kitachukua maudhui ya kigezo cha count cha mkataba na kuyaonyesha. Kwa kuwa bado hatujaita kitendakazi cha increment, inapaswa kuonyesha 0.
Sasa hebu tuite kitendakazi cha increment kwa kubofya kitufe. Utaona kumbukumbu za miamala inayofanywa zikionekana chini ya dirisha. Utaona kuwa kumbukumbu ni tofauti unapobonyeza kitufe cha kuchukua data badala ya kitufe cha increment. Ni kwa sababu kusoma data kwenye mnyororo wa bloku hakuhitaji miamala yoyote (kuandika) au ada. Kwa sababu kurekebisha tu hali ya mnyororo wa bloku ndiko kunahitaji kufanya muamala:
Baada ya kubonyeza kitufe cha increment ambacho kitazalisha muamala wa kuita kitendakazi chetu cha increment(), tukibofya tena vitufe vya count au getCount tutasoma hali mpya iliyosasishwa ya mkataba-erevu wetu huku kigezo cha count kikiwa kikubwa kuliko 0.
Katika mafunzo yajayo, tutaangazia jinsi unavyoweza kuongeza matukio kwenye mikataba-erevu yako. Kurekodi matukio ni njia rahisi ya kutatua mkataba-erevu wako na kuelewa kinachoendelea unapoita kitendakazi.
Ukurasa ulihaririwa mwisho: 3 Machi 2026







