-
bitcoin $101752.865364 USD
-1.09% -
ethereum $3382.985899 USD
-1.38% -
tether $0.999658 USD
0.04% -
xrp $2.272505 USD
-1.51% -
bnb $989.089004 USD
0.14% -
solana $156.962612 USD
-3.08% -
usd-coin $0.999776 USD
0.01% -
tron $0.290786 USD
-0.69% -
dogecoin $0.174594 USD
-2.86% -
cardano $0.560085 USD
-3.55% -
hyperliquid $40.023704 USD
-5.75% -
chainlink $15.324649 USD
-2.78% -
bitcoin-cash $493.576540 USD
-3.52% -
zcash $571.320038 USD
-12.05% -
stellar $0.280066 USD
-4.26%
Comment créer un contrat intelligent simple avec Solidity ?
Set up your Solidity dev environment with Node.js, Hardhat, and the Solidity compiler, then write, compile, and test a basic contract like Lock.sol locally.
Nov 06, 2025 at 05:30 am
Configuration de votre environnement de développement
1. Installez Node.js et npm pour gérer les dépendances et exécuter les outils locaux requis pour le développement Solidity.
2. Utilisez npm pour installer Hardhat, un puissant environnement de développement Ethereum qui prend en charge l'écriture, le test et le déploiement de contrats intelligents.
3. Initialisez un nouveau projet Hardhat en utilisant npx hardhat dans votre terminal, qui configure la structure de base des dossiers et les fichiers de configuration.
4. Installez le compilateur Solidity en l'ajoutant en tant que dépendance via le système de plugins de Hardhat, garantissant ainsi la compatibilité avec votre version EVM cible.
5. Créez un nouveau fichier appelé Lock.sol dans le répertoire des contrats pour commencer à rédiger votre premier contrat.
Rédiger un contrat intelligent de base en toute solidité
1. Démarrez le fichier Solidity avec l'instruction pragma spécifiant la version du compilateur, telle que pragma solidity ^0.8.0 ; .
2. Définissez un contrat à l'aide du mot-clé contract suivi d'un nom comme Lock , encapsulant toute la logique entre accolades.
3. Déclarez une variable d'état pour stocker les données en chaîne, par exemple : uint public unlockTime ; et adresse du propriétaire public payable ; .
4. Implémentez un constructeur qui s'exécute une fois lorsque le contrat est déployé, en définissant des valeurs initiales telles que le propriétaire et l'horodatage de déverrouillage.
5. Ajoutez une fonction comme Remove() qui inclut un contrôle d'accès à l'aide de modificateurs ou des instructions require pour restreindre l'exécution au propriétaire après un certain temps.
La fonctionnalité de modification de Solidity permet aux développeurs de réutiliser la logique de validation dans plusieurs fonctions, améliorant ainsi la lisibilité du code et réduisant la redondance.
Compilation et déploiement du contrat localement
1. Écrivez un script de déploiement dans le dossier scripts à l'aide de JavaScript ou de TypeScript pour instancier et envoyer le contrat à un réseau local.
2. Utilisez le réseau intégré de Hardhat pour simuler un environnement Ethereum sans dépenser d'argent réel pendant les tests.
3. Exécutez la commande de compilation npx hardhat compile pour vous assurer qu'il n'y a pas d'erreurs de syntaxe et générer des artefacts ABI.
4. Exécutez le script de déploiement via npx hardhat run scripts/deploy.js pour déployer le contrat sur le nœud local.
5. Capturez l'adresse du contrat déployé pour l'interaction et la vérification dans les étapes suivantes.
Tester le comportement du contrat intelligent
1. Créez un fichier de test dans le répertoire de test pour valider les fonctionnalités de base telles que les règles de propriété et de retrait basées sur le temps.
2. Utilisez ethers.js dans les tests pour interagir avec l'instance de contrat déployée et simuler les actions des utilisateurs.
3. Utilisez une description de style Moka et des blocs pour organiser clairement les cas de test et affirmer les résultats attendus à l'aide des assertions Chai.
4. Simulez des cas extrêmes tels que des tentatives de retrait anticipées et des accès non autorisés pour vérifier les contraintes de sécurité.
5. Exécutez la suite de tests complète à l'aide du test npx hardhat pour confirmer la fiabilité avant d'envisager un déploiement externe.
Foire aux questions
Quels outils puis-je utiliser pour écrire du code Solidity confortablement ? Les options populaires incluent Visual Studio Code avec l'extension Solidity, Remix IDE pour l'édition basée sur un navigateur et Hardhat pour les flux de travail de test et de déploiement intégrés.
Comment gérer le débordement d’entier dans Solidity ? À partir de Solidity 0.8.0, les opérations arithmétiques vérifient automatiquement les débordements et les sous-débordements, annulant les transactions si elles sont détectées. Pas besoin de s'appuyer sur des bibliothèques externes comme SafeMath, sauf si vous utilisez des versions plus anciennes.
Puis-je modifier un contrat intelligent après le déploiement ? Non, les contrats déployés sont immuables. Toute modification nécessite le redéploiement d’une nouvelle instance. Les développeurs utilisent souvent des modèles de proxy pour simuler l'évolutivité tout en maintenant la continuité des données.
Quel est l’objectif des projets ABI in Solidity ? L'interface binaire d'application (ABI) définit comment interagir avec le contrat, en répertoriant les fonctions, les paramètres et les types de retour. Il est essentiel que les frontends et les outils externes appellent correctement les méthodes contractuelles.
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.
-
PYR Échangez maintenant$1.13
103.86%
-
TRUTH Échangez maintenant$0.02981
50.27%
-
KAVA Échangez maintenant$0.1869
46.27%
-
ORE Échangez maintenant$537.18
39.63%
-
GIGGLE Échangez maintenant$166.05
26.15%
-
APR Échangez maintenant$0.2880
21.34%
- Ripple (XRP) en 2026 : conserver ou plier ? Un regard sur les alternatives DeFi futures et émergentes de XRP
- 2025-11-08 18:35:01
- Explosion du prix des pièces Zcash ZEC : de la niche de confidentialité au devant de la scène
- 2025-11-08 18:55:01
- Prédiction des prix Berachain : naviguer dans le battage médiatique du nid d'abeilles dans la crypto
- 2025-11-08 18:55:01
- Arthur Hayes, l'or et le Bitcoin : une trinité monétaire moderne ?
- 2025-11-08 19:15:01
- La prochaine étape du Shiba Inu : naviguer dans un marché en évolution
- 2025-11-08 19:20:01
- Le carrefour cryptographique du Pakistan : équilibrer les opportunités avec les réalités adossées à des actifs
- 2025-11-08 19:20:01
Connaissances connexes
Comment envoyer de l’Ether en toute sécurité vers un autre contrat ?
Nov 09,2025 at 06:40pm
Envoi d'Ether vers des contrats intelligents : considérations clés 1. Vérifiez que le contrat destinataire dispose d'une fonction de secours p...
Qu’est-ce qu’une machine à états et comment un contrat peut-il être conçu comme tel ?
Nov 08,2025 at 02:19pm
Comprendre les machines à états dans le contexte de la blockchain 1. Une machine à états est un modèle informatique utilisé pour concevoir des système...
Comment fonctionne une courbe de liaison et comment est-elle utilisée pour les ventes de jetons ?
Nov 09,2025 at 04:00pm
Comprendre la mécanique des courbes de liaison 1. Une courbe de liaison est une fonction mathématique qui relie le prix d'un jeton à son offre. À ...
Comment mettre à niveau un contrat intelligent à l'aide du modèle de proxy UUPS ?
Nov 09,2025 at 01:19am
Comprendre le modèle de proxy UUPS dans le développement de contrats intelligents Le modèle UUPS (Universal Upgradeable Proxy Standard) est devenu la ...
Comment fonctionne un système de vote en chaîne dans un DAO ?
Nov 09,2025 at 04:20pm
Comprendre le vote en chaîne dans les DAO 1. Un système de vote en chaîne fonctionne directement sur un réseau blockchain, permettant aux détenteurs d...
Comment gérez-vous les mathématiques à virgule fixe et les décimales dans Solidity ?
Nov 08,2025 at 11:40pm
Comprendre l'arithmétique à virgule fixe dans Solidity 1. Solidity ne prend pas en charge nativement les nombres à virgule flottante, ce qui signi...
Comment envoyer de l’Ether en toute sécurité vers un autre contrat ?
Nov 09,2025 at 06:40pm
Envoi d'Ether vers des contrats intelligents : considérations clés 1. Vérifiez que le contrat destinataire dispose d'une fonction de secours p...
Qu’est-ce qu’une machine à états et comment un contrat peut-il être conçu comme tel ?
Nov 08,2025 at 02:19pm
Comprendre les machines à états dans le contexte de la blockchain 1. Une machine à états est un modèle informatique utilisé pour concevoir des système...
Comment fonctionne une courbe de liaison et comment est-elle utilisée pour les ventes de jetons ?
Nov 09,2025 at 04:00pm
Comprendre la mécanique des courbes de liaison 1. Une courbe de liaison est une fonction mathématique qui relie le prix d'un jeton à son offre. À ...
Comment mettre à niveau un contrat intelligent à l'aide du modèle de proxy UUPS ?
Nov 09,2025 at 01:19am
Comprendre le modèle de proxy UUPS dans le développement de contrats intelligents Le modèle UUPS (Universal Upgradeable Proxy Standard) est devenu la ...
Comment fonctionne un système de vote en chaîne dans un DAO ?
Nov 09,2025 at 04:20pm
Comprendre le vote en chaîne dans les DAO 1. Un système de vote en chaîne fonctionne directement sur un réseau blockchain, permettant aux détenteurs d...
Comment gérez-vous les mathématiques à virgule fixe et les décimales dans Solidity ?
Nov 08,2025 at 11:40pm
Comprendre l'arithmétique à virgule fixe dans Solidity 1. Solidity ne prend pas en charge nativement les nombres à virgule flottante, ce qui signi...
Voir tous les articles














