-
Bitcoin
$113800
-1.09% -
Ethereum
$3511
-3.16% -
XRP
$2.957
0.31% -
Tether USDt
$0.9996
0.01% -
BNB
$758.1
-1.25% -
Solana
$164.9
-1.86% -
USDC
$0.9997
0.01% -
TRON
$0.3271
0.11% -
Dogecoin
$0.2002
-2.62% -
Cardano
$0.7171
-0.58% -
Hyperliquid
$38.38
-3.52% -
Sui
$3.438
-1.50% -
Stellar
$0.3834
-1.54% -
Chainlink
$16.06
-2.34% -
Bitcoin Cash
$537.3
-2.81% -
Hedera
$0.2386
-1.82% -
Avalanche
$21.56
-1.69% -
Ethena USDe
$1.001
0.01% -
Toncoin
$3.589
4.58% -
UNUS SED LEO
$8.962
0.30% -
Litecoin
$107.4
2.51% -
Shiba Inu
$0.00001213
0.10% -
Polkadot
$3.568
-1.34% -
Uniswap
$9.064
-0.08% -
Monero
$294.2
-3.40% -
Dai
$0.9999
0.00% -
Bitget Token
$4.284
-1.79% -
Pepe
$0.00001044
-0.41% -
Cronos
$0.1325
-1.44% -
Aave
$255.1
-0.83%
Comment rédiger un contrat intelligent Ethereum? Exemple de contrat intelligent Ethereum
Les contrats intelligents Ethereum sont des accords d'auto-exécution écrits en code, appliquant automatiquement les termes lorsque les conditions sont remplies.
Jun 15, 2025 at 11:56 pm

Comprendre les contrats intelligents Ethereum
Les contrats intelligents Ethereum sont des contrats auto-exécutés avec les termes de l'accord directement rédigé en lignes de code. Ces contrats s'exécutent sur la machine virtuelle Ethereum (EVM) et s'exécutent automatiquement lorsque les conditions prédéterminées sont remplies. L'écriture d'un contrat intelligent implique d'utiliser des langages de programmation spécifiques tels que Solidity , qui est le langage le plus utilisé pour le développement d'Ethereum.
Les contrats intelligents sont immuables une fois déployés, ce qui signifie qu'ils ne peuvent pas être modifiés après avoir été publiés sur la blockchain. Cette caractéristique rend crucial pour s'assurer que le code est soigneusement testé avant le déploiement. Les développeurs doivent également considérer les coûts du gaz, la visibilité des fonctions et les meilleures pratiques de sécurité lors de la rédaction de contrats intelligents.
Configuration de votre environnement de développement
Avant de plonger dans la rédaction d'un contrat intelligent Ethereum, vous devez créer un environnement de développement approprié. Voici comment:
- Installez Node.js et NPM s'il n'est pas déjà installé.
- Utilisez NPM pour installer Truffle , un cadre de développement Ethereum populaire:
npm install -g truffle
- Installez Ganache , une blockchain personnelle pour le développement Ethereum, pour simuler les transactions et tester vos contrats localement.
- Configurez MetAmask , un portefeuille d'extension de navigateur, pour interagir avec vos contrats déployés sur TestNets ou MainNet.
- Choisissez un éditeur de code comme Visual Studio Code et installez des extensions de solidité pour la mise en surbrillance de la syntaxe et la détection des erreurs.
Une fois ces outils en place, vous pouvez commencer à écrire et tester votre contrat intelligent.
Écrire votre premier contrat intelligent dans Solidity
Créons un contrat de stockage simple qui stocke et récupère un numéro. Vous trouverez ci-dessous un exemple de base écrit en solidité :
pragma solidity ^0.8.0;
contrat simplesorage {uint storedData; function set(uint x) public { storedData = x; } function get() public view returns (uint) { return storedData; }
}
Dans cet exemple:
- La
pragma solidity ^0.8.0;
Ligne spécifie la version de la solidité utilisée. - Une variable d'état
storedData
est déclarée détenir un entier non signé. - La fonction
set()
permet à quiconque de mettre à jour la valeur destoredData
. - La fonction
get()
est une fonction de vue qui renvoie la valeur actuelle sans modifier l'état du contrat.
Chaque fonction et variable doivent être clairement définies avec des modificateurs de visibilité appropriés comme le public , le privé ou l'interne .
Compilation et déploiement du contrat intelligent
Pour compiler et déployer le contrat ci-dessus à l'aide de la truffe et de la ganache , suivez ces étapes:
Créer un nouveau projet de truffe:
truffle init
Placez le fichier de solidité dans le répertoire
contracts
.Dans le dossier
migrations
, créez un script de migration (par exemple,2_deploy_contracts.js
) avec le contenu suivant:const SimpleStorage = artifacts.require('SimpleStorage');
module.exports = fonction (déploieur) {
deployer.Deploy (SimpLestorage);
};Compilez le contrat:
truffle compile
Démarrez Ganache et configurez les paramètres du réseau dans
truffle-config.js
.Déployez le contrat sur la blockchain locale:
truffle migrate
Après le déploiement, vous pouvez interagir avec le contrat à l'aide de la console truffe ou via les bibliothèques Web3.js ou Ethers.js dans une application frontal.
Tester le contrat intelligent
Le test garantit que votre contrat se comporte comme prévu dans divers scénarios. Truffle fournit une prise en charge intégrée pour les tests unitaires à l'aide de JavaScript ou de solidité lui-même.
Voici un exemple de test basé sur JavaScript situé dans le répertoire test
:
const SimpleStorage = artifacts.require('SimpleStorage');
contrat ('simplesorage', comptes => {
il ('devrait stocker la valeur 42', async () => {const instance = await SimpleStorage.deployed(); await instance.set(42, { from: accounts[0] }); const result = await instance.get.call(); assert.equal(result, 42);
});
});
Ce test:
- Déploie l' instance du contrat .
- Appelle la fonction
set()
avec la valeur 42. - Utilise
assert
pour vérifier que la valeur stockée correspond à la sortie attendue.
Écrivez toujours des tests pour les cas Edge, en particulier lorsque vous traitez avec une logique complexe, un contrôle d'accès ou des opérations financières.
Questions fréquemment posées
Q: De quels outils ai-je besoin en plus de truffes pour le développement de contrats intelligents Ethereum?
Vous pouvez utiliser Hardhat comme alternative à la truffe pour compiler, déploier et tester les contrats. De plus, Remix IDE est un outil basé sur un navigateur idéal pour les débutants qui souhaitent écrire et tester rapidement de petits contrats sans configurer un environnement local.
Q: Puis-je modifier un contrat intelligent Ethereum déployé?
Non, les contrats intelligents Ethereum sont immuables une fois déployés. Si des modifications sont nécessaires, les développeurs doivent déployer une nouvelle version du contrat et migrer les données si nécessaire. Cependant, des modèles tels que les contrats proxy peuvent être utilisés pour réaliser un comportement améliorable.
Q: Combien coûte-t-il de déployer un contrat intelligent sur Ethereum?
Le coût dépend de la complexité du contrat et du prix actuel du gaz sur le réseau. Vous pouvez estimer les coûts de gaz à l'aide d'outils tels que Remix IDE ou en vérifiant les détails de la transaction dans Metamask pendant le déploiement. Des contrats plus complexes consomment plus de gaz et coûtent donc plus cher.
Q: Est-il sûr d'écrire mon propre contrat intelligent pour une utilisation en production?
Bien que l'apprentissage de rédiger des contrats intelligents soit précieux, les déployer en production nécessite des audits de sécurité approfondis et des tests approfondis. Il est recommandé de suivre les meilleures pratiques, d'utiliser des bibliothèques bien établies comme Openzeppelin et de consulter les auditeurs expérimentés avant de lancer un contrat de gestion de fonds de véritables.
Clause de non-responsabilité:info@kdj.com
Les informations fournies ne constituent pas des conseils commerciaux. kdj.com n’assume aucune responsabilité pour les investissements effectués sur la base des informations fournies dans cet article. Les crypto-monnaies sont très volatiles et il est fortement recommandé d’investir avec prudence après une recherche approfondie!
Si vous pensez que le contenu utilisé sur ce site Web porte atteinte à vos droits d’auteur, veuillez nous contacter immédiatement (info@kdj.com) et nous le supprimerons dans les plus brefs délais.
-
RYU
$0.0...02235
195.30%
-
ALI
$0.006707
26.69%
-
RSC
$0.6216
25.33%
-
TIBBIR
$0.1254
24.10%
-
TROLL
$0.06274
22.89%
-
WILD
$0.4284
19.84%
- Ruvi AI: Le Millionaire Maker avec une pic de prix à l'horizon?
- 2025-08-03 02:50:12
- Doge, pièces de services publics et monnaie intelligente: une nouvelle ère pour l'investissement de cryptographie?
- 2025-08-03 02:50:12
- Punisher Coin: Ce meme est-il de l'investissement en crypto avec un potentiel de ROI 100x?
- 2025-08-03 03:30:12
- Ruvi Ai, XRP et CoinmarketCap: Décodage du buzz crypto
- 2025-08-03 03:30:12
- Solana, Wewake et Presales: Qu'est-ce qui est chaud dans l'espace cryptographique?
- 2025-08-03 03:35:25
- Wewake: les investisseurs affluent vers la crypto de prévente en tête alors que l'intégration sans portefeuille prend le devant de la scène
- 2025-08-03 02:30:12
Connaissances connexes

Quelle est la différence entre les transactions en chaîne et hors chaîne?
Aug 02,2025 at 04:22pm
Comprendre les transactions en chaîne Les transactions en chaîne se réfèrent aux transferts d'actifs numériques qui sont enregistrés directement s...

Quel est le problème à double dépenses et comment la blockchain l'empêche-t-elle?
Aug 02,2025 at 01:07pm
Comprendre le problème à double dépenses Le problème à double dépenses est un défi fondamental dans les systèmes de monnaie numérique où le même jeton...

Quelle est la différence entre une blockchain et une base de données?
Aug 01,2025 at 09:36pm
Comprendre la structure centrale d'une blockchain Une blockchain est un grand livre numérique décentralisé qui enregistre les données dans une sér...

Comment la blockchain gère-t-elle l'évolutivité?
Aug 02,2025 at 02:58pm
Comprendre les défis de l'évolutivité de la blockchain L'évolutivité de la blockchain fait référence à la capacité d'un réseau à gérer un ...

Quels sont les différents types de blockchains?
Aug 03,2025 at 03:01am
Blockchains publics: réseaux ouverts et décentralisés Les blockchains publics sont le type de blockchain le plus largement reconnu, caractérisé par le...

Qu'est-ce qu'un hachage dans une blockchain?
Aug 02,2025 at 05:28am
Comprendre le concept de hachage dans la blockchain Un hachage dans le contexte de la technologie de la blockchain fait référence à une empreinte numé...

Quelle est la différence entre les transactions en chaîne et hors chaîne?
Aug 02,2025 at 04:22pm
Comprendre les transactions en chaîne Les transactions en chaîne se réfèrent aux transferts d'actifs numériques qui sont enregistrés directement s...

Quel est le problème à double dépenses et comment la blockchain l'empêche-t-elle?
Aug 02,2025 at 01:07pm
Comprendre le problème à double dépenses Le problème à double dépenses est un défi fondamental dans les systèmes de monnaie numérique où le même jeton...

Quelle est la différence entre une blockchain et une base de données?
Aug 01,2025 at 09:36pm
Comprendre la structure centrale d'une blockchain Une blockchain est un grand livre numérique décentralisé qui enregistre les données dans une sér...

Comment la blockchain gère-t-elle l'évolutivité?
Aug 02,2025 at 02:58pm
Comprendre les défis de l'évolutivité de la blockchain L'évolutivité de la blockchain fait référence à la capacité d'un réseau à gérer un ...

Quels sont les différents types de blockchains?
Aug 03,2025 at 03:01am
Blockchains publics: réseaux ouverts et décentralisés Les blockchains publics sont le type de blockchain le plus largement reconnu, caractérisé par le...

Qu'est-ce qu'un hachage dans une blockchain?
Aug 02,2025 at 05:28am
Comprendre le concept de hachage dans la blockchain Un hachage dans le contexte de la technologie de la blockchain fait référence à une empreinte numé...
Voir tous les articles
