Quan la majoria de les persones comencen a aprendre sobre el desenvolupament de contractes intel·ligents, el primer que senten és Solidity i Ethereum. Això té sentit, ja que Solidity va permetre la programació en blockchain i Ethereum es va convertir en la plataforma de referència per a molts desenvolupadors.
No obstant això, Solidity no és l'únic llenguatge per a contractes intel·ligents, ni Ethereum l'única blockchain que admet aplicacions descentralitzades.
Existeix també TON (The Open Network), una blockchain ràpida i lleugera, originalment creada per Telegram, però ara gestionada per la comunitat. TON presenta un enfocament diferent al d'Ethereum i ofereix múltiples llenguatges per a desenvolupar contractes intel·ligents, entre ells Tact, Tolk, FunC i Fift. En aquesta guia, explorarem Tact i aprendrem a construir un contracte de votació amb ell.
Per què triar Tact?
TON ofereix diversos llenguatges segons el nivell d'abstracció i experiència del desenvolupador:
- FunC: Llenguatge tradicional de TON, de baix nivell, que atorga un control precís sobre el contracte. Similar a C, requereix conèixer el TON Virtual Machine (TVM).
- Fift: Llenguatge basat en pila, usat per a interactuar amb el TVM, desplegament i depuració. No és l'ideal per a escriure contractes complets.
- Tolk: Llenguatge en evolució que busca millorar eines i compatibilitat amb llenguatges d'alt nivell.
- Tact: Llenguatge d'alt nivell que simplifica el desenvolupament de contractes a TON, amb una sintaxi amigable semblant a TypeScript o Solidity.
Com funciona Tact
Un contracte en Tact segueix aquesta estructura:
contract: Defineix el nom i les variables d'estat.init: Inicialitza les variables i condicions del contracte en desplegar-se.receive: Funciona com un 'escoltador' de missatges entrants.get fun: Mètodes de només lectura per a consultar estat del contracte.
Tact usa comunicació basada en missatges, cosa que implica que cada contracte processa missatges al seu bloc receive. Això permet una organització estructurada i mantenible.
Construcció d'un contracte de votació
L'objectiu és crear un contracte que permeti als usuaris emetre vots i verificar els resultats a la blockchain.
Passos:
- Obrir el TON Web IDE: Crear un nou projecte amb Tact.
- Escriure el codi del contracte: Definir estructura de missatge per a votar i crear variables d'estat (
votesAliceivotesBob). - Implementar la lògica de votació: Incrementar el comptador adequat basat en el missatge rebut.
- Agregar funcions de consulta: Mètodes per a obtenir el nombre de vots.
Desplegar i provar el contracte
Des de l'IDE:
- Compilar i desplegar el contracte a l'entorn sandbox.
- Emetre vots a través de missatges i consultar resultats amb les funcions creades.
Conclusió
Amb aquest exemple, s'ha donat un primer pas en el desenvolupament amb Tact sobre TON. Tot i que aquest contracte és bàsic, els principis es poden aplicar a lògica més complexa.
A Q2BSTUDIO, som experts en desenvolupament de solucions tecnològiques i blockchain. Si busques portar els teus projectes a un altre nivell amb tecnologia descentralitzada, contacta'ns per a desenvolupar solucions personalitzades i eficients. Estem preparats per a innovar amb tu!





