Comment apprendre Solidity ?

Article publié le jeudi 4 novembre 2021 et mis à jour le mercredi 24 janvier 2024.

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 !

LisCon ETH Lisbon Blockchain Week

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 ?

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 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 PDF

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.

Apprendre Solidity avec 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.

https://soliditylang.org/

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.

https://speedrunethereum.com/

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

Bootcamp Solidity

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.

Apprendre Solidity et NextJS

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

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 !

Comment Coder

Je m'appelle Thomas. J'ai commencé à coder dans mon enfance. Depuis ma sortie de la première promo de l'École 42, j'ai développé des centaines d'applications et sites web. Sur ce blog, je vous donne les meilleurs conseils et astuces pour apprendre comment apprendre à coder efficacement.