Comment apprendre Solidity ?
Vous voulez devenir développeur Solidity ? Vous voulez coder vos propres smart contracts ? Vous avez envie de faire partie de la révolution web3 ?
Ce mois d’octobre 2021 j’étais à Lisbonne pour la Blockchain week (ETHLisbon) !
J’y ai rencontré beaucoup de “buidlers” et j’en ai tiré la conclusion qu’il faut apprendre Web 3 maintenant !
Développant moi-même en Solidity depuis 2018, il est clair qu’en 2024 :
- les outils se sont améliorés
- la documentation est toujours meilleure
- des communautés se sont organisées sur Discord
- les plateformes d’apprentissages sont excellentes
En plus, avec la hype autour des NFT et maintenant de la DeFi, il est temps temps d’apprendre Solidity correctement.
D’ailleurs, j’ai écrit un article si vous voulez savoir comment coder votre propre smart contract pour minter des NFT.
Qu’est-ce qu’est Solidity ?
Solidity est un langage de programmation créé en 2014-2015 par Gavin Wood comme un langage informatique pour interagir avec la machine virtuelle Ethereum (EVM).
À quoi sert Solidity ?
Le langage de programmation Solidity permet de créer des applications décentralisées qui interagissent avec la blockchain Ethereum (et d’autres blockchains compatibles). Un développeur Solidity peut donc coder des smart contracts.
Qu’est-ce qu’on peut faire avec Solidity ?
Un Smart contract écrit en Solidity est du code qui tourne sur la blockchain Ethereum. Ces bouts de code fonctionnent comme des services cloud (AWS, Firebase) et ont permis le développement de nombreux projets depuis 2015.
Solidity permet donc, par exemple, de créer des NFTs, des jeux vidéo, des plateformes de DeFi, organiser des DAOs, et toutes autres formes de projets web3.
De quel langage Solidity est-il le plus proche ?
La syntaxe est similaire à celle de Javascript, ce qui la rend tout à fait compréhensible pour la plupart des programmeurs. Comme Solidity est utilisé pour développer la Web3, il est logique qu’il soit proche de JavaScript, le langage web par excellence.
Où apprendre Solidity gratuitement ?
Il existe de nombreux sites et vidéos gratuits pour apprendre Solidity. Comme la pénurie de développeur Web3 est un vrai problème pour l’industrie, des initiatives privées de haute qualité et gratuites ont vu le jour.
Voici les meilleures d’entre-elles :
La documentation du site Solidity
La documentation du site officiel Solidity est vraiment qualitative et disponible dans plusieurs dizaines de langages dont le Français.
Cette documentation couvre tous les concepts de Solidity ainsi que les concepts importants d’Ethereum.
La documentation du site Solidity
Apprendre Solidity PDF
En plus du site, vous pouvez télécharger le fichier au format PDF de la documentation Solidity. Cliquez sur le lien ci-dessous pour obtenir votre PDF “Apprendre Solidity”.
Apprendre Solidity sur YouTube
YouTube est un bon moyen d’apprendre n’importe quel langage de programmation, Solidity inclus. Sur la plateforme vidéo vous pourrez suivre le développement de Dapp, comprendre des concepts pour coder vos propres projets crypto.
La chaîne YouTube de FreeCodeCamp
Si vous suivez un peu ce blog, vous savez que j’aime beaucoup FreeCodeCamp. La chaîne YouTube de FreeCodeCamp propose beaucoup de formations gratuites de plusieurs heures et Solidity n’est pas une exception.
Vous trouverez donc plusieurs tutoriels pour apprendre Solidity sur le site - et la chaîne YouTube - de FreeCodeCamp.
En anglais mais avec des sous-titres français, découvrez la formation “Solidity, Blockchain, and Smart Contract Course – Beginner to Expert Python” pour apprendre Solidity et Python.
Dapp University
Aussi en anglais, Dapp University est la référence pour le développement de Smart Contracts avec Solidity sur YouTube.
Il propose de nombreux tutoriels et propose une formation payante si vous voulez aller plus loin dans son contenu.
Voici un cours pour débutants “MASTER Solidity for Blockchain Step-By-Step (Full Course)”
Vous trouverez aussi d’autres tutoriels sur la chaîne YouTube de Dapp University.
BenBK
En français cette fois-ci, j’ai récemment trouvé la chaîne YouTube de BenBK qui propose de nombreux tutoriels pour apprendre Solidity.
Par exemple, il a toute une playlist pour Devenir développeur Blockchain en Français Solidity.
Apprendre Solidity avec Buildspace
Financé par a16z et YCombinator, BuildSpace est un site totalement gratuit qui propose pour le moment (fin 2023) 4 tutoriels :
- Construire une application Web3 avec Solidity + Ethereum Smart Contracts
- Réalisez votre propre collection de NFT et créez une application Web3 pour les présenter
- Créez votre propre mini-jeu NFT par navigateur au tour par tour
- Construire une application Web3 sur Solana avec React et Rust
En plus, à la fin de chaque tutoriel, vous recevez un NFT unique si vous finissez dans les 7 jours ! D’ailleurs voici le NFT que j’ai reçu après avoir fini un des tutoriels BuildSpace.
Rejoignez Buildspace pour apprendre Solidity (ou Rust et Solana) dès aujourd’hui !
Apprendre Solidity avec Crypto Zombie
Crypto Zombie est un site qui propose une formation Solidity gratuite. Développée par LOOM Network (à ne pas confondre avec la plateforme pour partager des messages vidéo), Crypto Zombie est la formation web de référence la plus ancienne pour apprendre Solidity.
Crypto Zombie propose 3 cursus :
- Un pour les débutants
- Un pour les développeurs Solidity plus avancés
- Un pour aller plus loin dans la blockchain
Apprenez Solidity en français avec Crypto Zombie.
Apprendre Solidity avec Ethernaut
The Ethernaut est un jeu de guerre basé sur Web3/Solidity. Il se joue avec la EVM (machine virtuelle Ethereum). Chaque niveau est un Smart Contract qui doit être “piraté”.
Le jeu est 100% open source et tous les niveaux sont des contributions faites par d’autres joueurs.
Apprenez Solidity différemment avec Ethernaut.
Lire les Whitepapers
Un whitepaper est un document technique qui explique un projet ou un concept. C’est un document que vous trouverez pour tous les projets cryptos sérieux s’ils reposent sur des concepts innovants.
Le Whitepaper le plus connu est celui du Bitcoin écrit par Satoshi Nakamoto. Si vous ne l’avez pas encore lu, je vous conseille vivement sa lecture Whitepaper Bitcoin.
Lire le Whitepaper blockchain vous comprendra à bien comprendre le principe de blockchain. Vous pouvez passer les parties trop techniques pour juste lire l’abstract.
Et comme cet article parle d’apprendre Solidity, vous pouvez aussi lire le Whitepaper d’Ethereum
Le site officiel de Solidity
Le site officiel de Solidity est la ressource de reference créée par l’équipe Solidity elle-même disponible le site web officiel de Solidity. L’équipe Solidity couvre tous les concepts de base et les principes fondamentaux de Solidity et des smart contracts en général.
Solidity by Example
Solidity by Example est une collection d’exemples plus pratiques, avec code source et vidéos pour vous aider dans votre apprentissage.
https://solidity-by-example.org/
Speedrun Ethereum
Speedrun Ethereum vous aide à passer au niveau supérieur. Vous apprendrez à construire des dApps sur Ethereum en construisant votre propre wallet Web3. Si vous aimez cet ouvrage, n’oubliez pas de consulter les autres travaux de l’incroyable Austin Griffith, tels que ETH-build et Scaffold-eth.
Les cours pour apprendre Solidity
Personnellement ma manière préférée d’apprendre une nouvelle techno : les cours payants. Avec vous aurez une formation complète avec des exercices et des exemples pratiques en plus de la théorie.
Bootcamp Solidity
La promesse de ce cours est “Devenez un développeur Ethereum Blockchain avec un seul cours. Maîtrisez Solidity, Web3.JS, Truffle, Metamask, Remix et plus encore !”.
Au programme :
- Construction de projets avec Solidity
- Comprendre la blockchain
- Comprendre les Smart Contracts
- Utiliser les outils de développement Ethereum
- Intégrer web3 à vos projets
Ethereum et Solidity : le guide complet
Utiliser Ethereum, Solidity et les Smart Contracts pour créer des applications Blockchain.
- Comprendre pourquoi utiliser la blockchain
- Créer, tester et déployer des Smart Contracts
- Utiliser la dernière version des outils de développement Ethereum
- Apprendre des exemples concrets pour comprendre ce que sont la blockchain et le minage
Ethereum et Solidity : le guide complet
Apprendre Solidity et NextJS
Créez de véritables Smart Contracts en Solidity et des DApps avec React & Next JS. Comprendre le fonctionnement de la blockchain Ethereum.
Si vous êtes déjà développeur front-end react ou encore mieux si vous connaissez NextJS, alors cette formation vous permettra de vite commencer à faire des projets web3 complets.
Vous cherchez plus de cours sur le web3 ou Solidity ? Alors mon article sur les cours Blockchain vous intéressera probablement !
Les livres pour apprendre Solidity
Avoir un ouvrage que vous pouvez consulter en apprenant un nouveau langage est un outil puissant. Et par chance il y a d’excellents livres sur Solidity !
Mastering Ethereum: Building Smart Contracts and Dapps
Auteur : Andreas Antonopoulos et Gavin Wood
Note : ★★★★★
Langue : Anglais 🇬🇧
La référence en matière de livre pour apprendre Solidity, écrit par le créateur du langage (Gavin Wood) et l’excellent Andreas Autonopoulos (auteur de Mastering Bitcoin).
C’est la bible pour apprendre à coder des smart contracts, même si il date de 2018 son contenu est toujours totalement appliquable aujourd’hui !
Mastering Blockchain Programming with Solidity: Write production-ready smart contracts for Ethereum blockchain with Solidity
Auteur : Jitendra Chittoda
Note : ★★★★☆
Langue : Anglais 🇬🇧
Une alternative à Mastering Ethereum, avec ce livre vous apprendrez le développement de smart contracts avec Truffle, Ganache, Remix et MetaMask, mais aussi la différence entre ERC-20 et ERC-721 et les autres concepts autour de la blockchain Ethereum.
Quel est le meilleur moyen d’apprendre Solidity ?
En fonction de votre personnalité et de votre motivation, le meilleur moyen pour apprendre Solidity est de consommer un peu de théorie et puis de pratiquer beaucoup en codant des projets.
En ce qui concerne les ressources, vous avez ci-dessous les meilleurs livres, sites web et vidéo en français et en anglais pour apprendre efficacement.
Combien gagne un développeur Solidity ?
Le salaire d’un développeur Solidity dépend d’où l’entreprise est basée et du niveau d’avancement du projet. Le salaire minimum devrait être de 50 000 euros par ans pour un développeur en CDI. Et il peut être un multiple de ce montant dans une boîte crypto qui vous donne des tokens en plus d’un salaire supérieur à 100 000 euros par an.
Vous voulez devenir développeur blockchain ? Alors lisez mon article pour tout savoir sur le métier de développeur blockchain.
Quels sont les prérequis pour apprendre Solidity ?
Comme tous les langages de programmation, Solidity peut être appris par n’importe qui. Cependant, pour ce langage en particulier, certains prérequis vous aideront à apprendre nettement plus vite comme Solidity repose sur plusieurs concepts et autres technologies.
Les prérequis pour apprendre Solidity sont :
- Une connaissance des principes fondamentaux de la blockchain et d’Ethereum
- Une expérience préalable avec un langage de programmation comme Python ou JavaScript
- Une connaissance de base des concepts de programmation
- Être familier avec la ligne de commande (terminaux)
Est-ce que Solidity est Turing Complete ?
Oui, Solidity est Turing Complete.
Turing-complet signifie un système qui peut tout problème de calcul avec une mémoire et une puissance suffisantes.
Ce qui veut dire qu’on peut écrire des programmes (smart contrats) qui peuvent (pour la plupart) résoudre tout types de calculs.
En utilisant Solidity, on peut utiliser les structures de contrôles comme les boucles et stocker des valeurs dans des variables. Ces fonctionnalités sont essentielles pour développer des programmes complexes.
Être Turing Complete est un critère important pour les smart contracts Ethereum car avec on peut coder des programmes complexes.
Construisez des projets web3 et participez à la nouvelle révolution d’internet
Et voilà vous avez maintenant une bonne compréhension de ce qu’est Solidity, vous savez comment l’apprendre et à quoi le langage sert.
C’est maintenant à vous de vous former correctement et de pratiquer le développement de Smart Contracts en Solidity pour devenir un bon développeur Blockchain.
Et si vous trouvez des meilleures ressources Solidity pendant votre apprentissage, n’hésitez pas à les poster sur Twitter !
Je m'appelle Thomas, et je code depuis plus de 20 ans. Depuis ma sortie de la première promotion de l'École 42, j'ai conçu et développé des centaines d'applications et de sites web. Sur ce blog, je partage avec vous les stratégies les plus efficaces pour maîtriser l'art de coder et progresser rapidement.