paint-brush
Pourquoi devriez-vous apprendre le langage de programmation Leopar@kaylej
5,611 lectures
5,611 lectures

Pourquoi devriez-vous apprendre le langage de programmation Leo

par Kaylej4m2023/01/03
Read on Terminal Reader

Trop long; Pour lire

Apprendre un nouveau langage de programmation est commun aux développeurs endurcis. Le programmeur moyen peut se mettre à niveau en 3 à 4 semaines et peut souvent apprendre 2 à 3 nouvelles langues en un an. Le Lion mérite-t-il votre attention ? À quel point est-il prometteur ? Découvrons-le.
featured image - Pourquoi devriez-vous apprendre le langage de programmation Leo
Kaylej HackerNoon profile picture

Apprendre un nouveau langage de programmation est commun aux développeurs endurcis. Le programmeur moyen peut se mettre à niveau en 3 à 4 semaines et peut souvent apprendre 2 à 3 nouvelles langues en un an. Le Lion mérite-t-il votre attention ? À quel point est-il prometteur ? Découvrons-le.


La langue du Lion est très similaire à Rust

Leo est un langage de programmation à typage statique conçu pour la blockchain Aleo. Vous pouvez créer des applications privées dans une blockchain décentralisée entièrement privée en l'utilisant, essentiellement Solidity mais pour Aleo.


Comparons la syntaxe des opérations mathématiques les plus simples :


Un exemple de programme simple pour Leo :


Idem pour Rust :


Comme nous pouvons le voir, les deux langages ont à peu près la même syntaxe, mais ils diffèrent considérablement dans la structure entrée-sortie. Alors que dans Leo, nous pouvons intégrer des variables à partir d'un fichier d'entrée séparé, dans Rust, vous ne pouvez pas le faire par défaut (vous ne pouvez le faire que si vous décrivez manuellement le fichier d'importation). Cela est dû à la structure de la blockchain Aleo - elle est axée sur l'anonymat, et les développeurs ont estimé que les entrées devaient être décrites dans un fichier séparé. Essayez-le par vous-même :


https://play.leo-lang.org/ <- compilateur en ligne pour Leo


https://play.rust-lang.org/ <- compilateur en ligne pour Rust


Passons rapidement en revue les bases du Lion :


Leo prend en charge les mots-clés let et const pour définir les variables.


let définit une variable de programme dédiée.

const définit une variable de programme constante.


Les variables constantes ne définissent pas une variable dans un système de contraintes. Leur valeur est contrainte dans le schéma lors du calcul avec la variable allouée. les variables constantes ne peuvent pas être modifiées. Ils ont les mêmes fonctionnalités que Rust.



Les calculs sont exprimés en termes de circuits arithmétiques R1CS. Ainsi, le calcul d'une variable sélectionnée aboutit toujours à une autre variable sélectionnée.


Variabilité

Toutes les variables dans Leo sont immuables - elles ne peuvent pas être modifiées après l'affectation, tout comme dans Rust. Toutes les variables dans Leo sont modifiables - elles peuvent être modifiées après l'affectation. La fonctionnalité des variables n'est pas conservée dans différentes zones car les variables Leo sont transmises par valeur.


Typage statique

Leo est un langage à typage statique, ce qui signifie que nous devons connaître le type de chaque variable avant d'exécuter le schéma.


Des types explicites sont requis.

Il n'y a pas de valeur indéfinie ou nulle dans Leo. Lors de l'affectation d'une nouvelle variable, le type de la valeur doit être explicite. Une exception à cette règle est si la nouvelle variable hérite son type d'une variable précédente.


Passage de valeur

Les variables dans Leo sont toujours transmises par valeur, ce qui signifie qu'elles sont toujours copiées lorsqu'elles sont utilisées comme entrée dans une fonction ou dans des affectations.


Valeurs booléennes

Leo prend en charge les tuples traditionnels ou les valeurs booléennes. L'ajout d'un type booléen explicite pour les valeurs booléennes dans les instructions est facultatif.



Entiers

Leo prend en charge les entiers signés i8 , i16 , i64 i32 i128 et les entiers non signés u8 , u16 , u32 , u64 , u128


Les nombres entiers avec des longueurs de bits plus élevées créent plus de restrictions dans le schéma, ce qui peut ralentir le temps de calcul.


De ce qui précède, nous pouvons conclure que l'apprentissage de Leo ne prendra pas beaucoup de temps pour les développeurs Rust. Cependant, la question pour les développeurs d'Aleo est : "Comment pouvons-nous encourager les développeurs à passer de Rust à Leo ?" Étant donné que les constructeurs expérimentés sont en demande, le projet met des enjeux importants sur la ligne. Il existe un programme de subventions Aleo à cet effet :


Programme de subventions pour les développeurs exceptionnels

Afin d'encourager les développeurs qualifiés à rejoindre Aleo, le projet a lancé un programme de subventions :


https://www.aleo.org/post/community-grants-program


Les développeurs peuvent demander jusqu'à 100 000 $ pour leur travail. Cependant, plus le montant d'argent demandé est élevé, plus le niveau de travail requis est élevé. Voici un exemple de certains des gagnants du programme de subventions :


Pine Street Labs : https://www.aleo.org/post/aleo-grants-pine-street-labs - est essentiellement un constructeur de logiciels de portefeuille.


Partenariat avec Forte : https://www.aleo.org/post/aleo-announces-partnership-with-forte - développement de jeux (Pas vraiment un bénéficiaire de subvention puisque ce n'est pas une startup)



Comparons maintenant le revenu moyen d'un développeur Rust avancé :


Jetons un coup d'œil à Indeed.com :



En moyenne, un développeur Rust moyen-sénior peut gagner jusqu'à 150 000 $ par an (exemples Blockchain et Web2). Combien plus (ou moins) que ce qui peut être gagné chez Leo ? Personne ne le sait, mais vous pouvez certainement vous attendre à un salaire élevé puisque le marché du travail des développeurs Leo n'est évidemment pas le plus compétitif. La plupart des développeurs que je connais se sentent à l'aise pour créer leurs propres éléments, tels que des collections NFT ou des DAO, et vous aussi. Vous pouvez toujours gagner de l'argent tout en étant indépendant. Plus précisément, ce n'est pas du tout compétitif - vous pouvez devenir l'un des premiers programmeurs de Leo dès maintenant !


Où commencer? Apprendre Leo n'est pas la tâche la plus difficile, car les passionnés du projet actuel font déjà un excellent travail de préparation pour éduquer le matériel pour Leo ! Visitez simplement la chaîne officielle Aleo Discord pour rechercher des traductions dans n'importe quelle langue : https://discord.gg/aleohq


Vous pouvez également commencer à apprendre avec les documents officiels de Leo : https://developer.aleo.org/leo/language


Bonne chance dans vos efforts!