Sviluppo di contratti intelligenti
Data la nascita del settore, le strutture di dati alterate e la mancanza di solide implementazioni nel mondo reale, una critica comune rivolta alle criptovalute è stata la mancanza di linguaggi adatti agli sviluppatori.
Con circa 6.900 sviluppatori attivi a tempo pieno e circa 22.400 sviluppatori attivi mensilmente nel 2023, rispetto ai circa 28.500.000 sviluppatori in tutto il mondo, la criptovaluta come categoria ha catturato un misero 0,024% / 0,078% del mindshare indirizzabile.
Sebbene la stragrande maggioranza della quota di mercato sia stata finora conquistata da Ethereum (grazie al vantaggio della prima mossa), l'industria si è resa conto che, per scalare, deve sintetizzarsi con un insieme più ampio di linguaggi di sviluppo.
Atleta supporta lo sviluppo di smart contract in Solidity nativo e nel derivato di Solidity basato su Rust, INK!
Solidity
Il linguaggio di alto livello orientato agli oggetti più utilizzato in Web3 è stato progettato per sviluppare applicazioni EVM. Con la sua sintassi derivata da Javascript, Solidity ha molte caratteristiche in comune, tra cui l'ereditarietà, le librerie e i tipi complessi definiti dall'utente, che riducono la curva di avvio per gli sviluppatori. Essendo il linguaggio pionieristico per lo sviluppo di contratti intelligenti, Solidity ospita l'ecosistema di sviluppo più robusto con un'ampia documentazione e strumenti (tra cui truffle, remix, Hardhat, ecc.) per facilitare la distribuzione, framework di test e forum di supporto della comunità. La maturità dell'infrastruttura di sviluppo ha portato Solidity a essere il linguaggio dominante su L1 alternative (tra cui Binance Smart Chain, Polygon, Avalanche, ecc.) e L2 (tra cui Optimism, Arbitrum e zkSync).
INK!
Un linguaggio incorporato specifico per il dominio per lo sviluppo di contratti intelligenti su catene basate su substrati nel linguaggio di programmazione Rust che si compila in WASM. Ereditando tutti i vantaggi del suo linguaggio ospite, Rust (sequenze, condizionali, iterazione, funzioni, ecc.), INK! aggiunge primitive che consentono ai programmatori di lavorare a livelli di astrazione più elevati e di interagire con il codice Solidity.
Last updated