Solidity est le principal langage de programmation pour créer des contrats intelligents sur Tron et d'autres blockchains basées sur Ethereum. La syntaxe de Solidity est similaire à celle de JavaScript, ce qui facilite son apprentissage pour les personnes ayant une expérience de JavaScript.
Activité 1 : Passez environ 20 minutes à parcourir la documentation de Solidity (https://docs.soliditylang.org/). Notez les similitudes ou les différences que vous remarquez entre Solidity et les autres langages de programmation que vous connaissez.
Dans Solidity, nous disposons de plusieurs types de données, notamment uint, address, bool et string. Nous définissons des variables pour stocker des données et nous écrivons des fonctions pour manipuler ces données. Créons un contrat intelligent très basique. Nous allons créer un contrat qui stocke un numéro et nous permet de récupérer et de modifier ce numéro.
Ouvrez TronIDE et créez un nouvel espace de travail. Vous trouverez ce code dans le premier contrat appelé Storage.sol :
Solidity
// SPDX-License-Identifier : GPL-3.0
pragma solidity >=0.7.0 <0.9.0 ;
/**
* @title Storage
* @dev Store & retrieve value in a variable
*/
contract Storage {
uint256 number ;
/**
* @dev Store value in variable
* @param num value to store
*/
function store(uint256 num) public {
number = num;
}
/**
* @dev Return value
* @return value of 'number'
*/
function retrieve() public view returns (uint256){
return number;
}
}
Dans ce contrat, nous déclarons :
numéro de
variable d'état de type uint256
(entier non signé de 256 bits)store()
qui met à jour la valeur d'un nombre
retrieve(
) qui renvoie la valeur actuelle d'un nombre
Maintenant que nous avons notre contrat, déployons-le sur le réseau Nile Testnet.
Voilà ! Votre premier contrat est maintenant en ligne sur le Nile Testnet !
Après avoir déployé avec succès votre contrat intelligent sur le Testnet Nile via TronIDE, suivez les étapes suivantes :
store()
et retrieve()
.store()
. Assurez-vous que le nombre se situe dans la plage acceptable pour un uint256
(entre 0 et environ 1,15x10^77). Après avoir saisi le numéro, cliquez sur le bouton store()
. Une transaction sera initiée.retrieve()
. Cliquez sur le bouton retrieve()
. Il n'est pas nécessaire de saisir une valeur pour cette fonction.retrieve()
ne créera pas de nouvelle transaction car il s'agit d'une fonction de vue
(elle ne modifie pas l'état du contrat). Vous devriez voir la sortie affichée dans l'onglet "console" en bas de l'écran de TronIDE. Le nombre que vous voyez doit être le même que celui que vous avez enregistré à l'aide de la fonction store()
.C'est tout ! Vous avez interagi avec votre contrat déployé. Cette interaction est au cœur de la manière dont les utilisateurs interagissent avec vos dApps.
Solidity est le principal langage de programmation pour créer des contrats intelligents sur Tron et d'autres blockchains basées sur Ethereum. La syntaxe de Solidity est similaire à celle de JavaScript, ce qui facilite son apprentissage pour les personnes ayant une expérience de JavaScript.
Activité 1 : Passez environ 20 minutes à parcourir la documentation de Solidity (https://docs.soliditylang.org/). Notez les similitudes ou les différences que vous remarquez entre Solidity et les autres langages de programmation que vous connaissez.
Dans Solidity, nous disposons de plusieurs types de données, notamment uint, address, bool et string. Nous définissons des variables pour stocker des données et nous écrivons des fonctions pour manipuler ces données. Créons un contrat intelligent très basique. Nous allons créer un contrat qui stocke un numéro et nous permet de récupérer et de modifier ce numéro.
Ouvrez TronIDE et créez un nouvel espace de travail. Vous trouverez ce code dans le premier contrat appelé Storage.sol :
Solidity
// SPDX-License-Identifier : GPL-3.0
pragma solidity >=0.7.0 <0.9.0 ;
/**
* @title Storage
* @dev Store & retrieve value in a variable
*/
contract Storage {
uint256 number ;
/**
* @dev Store value in variable
* @param num value to store
*/
function store(uint256 num) public {
number = num;
}
/**
* @dev Return value
* @return value of 'number'
*/
function retrieve() public view returns (uint256){
return number;
}
}
Dans ce contrat, nous déclarons :
numéro de
variable d'état de type uint256
(entier non signé de 256 bits)store()
qui met à jour la valeur d'un nombre
retrieve(
) qui renvoie la valeur actuelle d'un nombre
Maintenant que nous avons notre contrat, déployons-le sur le réseau Nile Testnet.
Voilà ! Votre premier contrat est maintenant en ligne sur le Nile Testnet !
Après avoir déployé avec succès votre contrat intelligent sur le Testnet Nile via TronIDE, suivez les étapes suivantes :
store()
et retrieve()
.store()
. Assurez-vous que le nombre se situe dans la plage acceptable pour un uint256
(entre 0 et environ 1,15x10^77). Après avoir saisi le numéro, cliquez sur le bouton store()
. Une transaction sera initiée.retrieve()
. Cliquez sur le bouton retrieve()
. Il n'est pas nécessaire de saisir une valeur pour cette fonction.retrieve()
ne créera pas de nouvelle transaction car il s'agit d'une fonction de vue
(elle ne modifie pas l'état du contrat). Vous devriez voir la sortie affichée dans l'onglet "console" en bas de l'écran de TronIDE. Le nombre que vous voyez doit être le même que celui que vous avez enregistré à l'aide de la fonction store()
.C'est tout ! Vous avez interagi avec votre contrat déployé. Cette interaction est au cœur de la manière dont les utilisateurs interagissent avec vos dApps.