Le support Java a officiellement atterri sur Neo3 suite à la récente sortie de neow3j v3.3.0 par l’équipe de développement communautaire Neo AxLabs. Parallèlement à une gamme de nouvelles fonctionnalités et améliorations pour le SDK Java, la version introduit un compilateur de contrat intelligent Java et depack, offrant une compatibilité complète avec Neo3 Preview3.

Neow3j pour Neo3 Preview3

Neow3j 3.3.0 permet aux développeurs Java de commencer à travailler sur les intégrations Neo3. Cette étape permet aux développeurs d’écrire un contrat intelligent basé sur Java, de le tester dans le même IDE et de déployer enfin le contrat compilé via un nœud Neo3. Le processus est conçu pour améliorer considérablement l’expérience de développeur pour les applications Neo basées sur Java.

Sur le front du SDK, AxLabs a récemment terminé une refonte de l’API utilisée pour l’interaction de contrat intelligent. Les développeurs peuvent s’attendre à une façon plus cohérente et intuitive d’utiliser cette partie de la bibliothèque. En outre, l’équipe a terminé la mise en œuvre de tous les types StackItem avec l’ajout des types de tampon et de pointeur, et a étendu les contrats natifs NeoToken et Policy avec de nouvelles méthodes.

Le compilateur & devpack a également vu plusieurs changements et améliorations, dont la plupart ont été nécessaires pour la compatibilité avec Neo3 Preview3. Il s’agit notamment de l’introduction des nouveaux syscalls binaires et de rappel, de la suppression de l’annotation des points d’entrée et de l’ajout d’une annotation pour l’ajout de SupportStandards au manifeste du contrat.

Trois nouvelles méthodes d’assistance (addressToScriptHash, hexToBytes et stringToInt) ont été ajoutées au devpack pour permettre la conversion des littérals de chaînes au moment de la compilation dans des variables statiques. En outre, la prise en charge de la concaténation des chaînes a été activée dans le compilateur par l’intermédiaire de l’opérateur + . Une liste complète des modifications et des nouvelles fonctionnalités peut être consultée dans les notes de publication.

Pour mieux équiper les développeurs Java d’un guide pour créer leurs propres contrats intelligents, AxLabs a également publié un certain nombre de contrats d’exemple.

Création d’un contrat Hello World en Java avec Neow3j

Ces modèles incluent un contrat Hello World de base, un modèle NEP-5et d’autres exemples tels que le contrat NameService qui démontre des fonctionnalités plus complexes, y compris le stockage, CheckWitness, différents types de données et les opérations arithmétiques.

Les prochaines étapes de la bibliothèque seront axées sur la préparation du lancement de Neo3 TestNet, qui devrait s’exécuter sur la prochaine version de Preview 4. AxLabs reste au courant des derniers développements de base, prêt à mettre en œuvre les changements nécessaires à la compatibilité et à s’assurer que le support Java est prêt à suivre le lancement.

D’autres éléments de feuille de route pour neow3j incluent la prise en charge des jetons non fongibles dans le SDK et les événements de contrat intelligent dans le compilateur et le devpack.

(Re)introduction d’AxLabs

La communauté de développement néo AxLabs se compose de trois constructeurs passionnés et d’évangélistes open-source. Ils se sont impliqués dès le début de la scène blockchain en Suisse, travaillant aux côtés de plusieurs start-up et entreprises. En plus de leur vaste expérience dans l’industrie de l’ingénierie logicielle, les trois partagent une formation universitaire, avec divers diplômes de l’Université de Zurich.

Dr. Guilherme Sperb Machado est un expert Java/JVM avec une solide expérience dans la blockchain. Il est un contributeur de projet open-source en série, et apporte 12 ans d’expérience dans l’industrie / projets universitaires aux côtés d’un doctorat en informatique. Guil contribue au projet neow3j dans son ensemble, et est constamment à la recherche et matérialiser la prochaine grande chose.

En tant qu’ingénieur logiciel principal, Claude Müller contribue au SDK neow3j et est la personne clé derrière le compilateur et le devpack. Expert java/jvm avec une M.Sc en informatique, Claude travaille avec la technologie blockchain depuis plus de 3 ans, dont deux ont été passés à travailler sur Neo. Claude est un expert dans la réalisation des choses, la planification, la conception et l’exécution des projets.

Pour compléter le trio est Michael Bucher, un ingénieur logiciel full-stack qui aide à garder les choses en douceur et à la recherche jolie avec diverses améliorations de la qualité du code et des contributions frontend. S’appuyant sur son expérience en tant que programmeur Java avec un B.Sc. en informatique, Michael est l’auteur de nombreuses améliorations au SDK neow3j depuis le début des travaux sur Neo au début de 2020.

AxLabs a rejoint l’écosystème Neo en défendant l’importance d’une bonne expérience de développeur. L’équipe a rapidement concentré ses efforts sur la correction du manque de soutien disponible à l’époque pour la communauté Java. Il cherche à combiner l’innovation avec des solutions stables et de qualité de production. Dans une conversation avec Neo News Today, Guil & Claude a commenté:

« C’est pourquoi nous avons la devise « utiliser des technologies de pointe pour construire des produits solides ». Tous les membres de l’équipe sont des constructeurs. Passionné de livrer des produits, des outils, des bibliothèques, ou toute autre chose qui est utile aux gens là-bas.

Peu de temps après son introduction, l’équipe a produit un SDK Java & Android complet pour l’intégration des applications existantes avec Neo2. Introduite pour la première fois à Neo DevCon à Seattle,la bibliothèque neow3j a ensuite été agrandie avec le soutien de Kotlin et complétée par de nouvelles fonctionnalités pour étendre son attention au-delà d’être simplement un SDK.

L’équipe s’est également appuyée sur ses antécédents académiques pour aider à diffuser des informations sur le développement de la blockchain. Les membres ont tenu des conférences et donné des conférences et des tutoriels sur Neo dans diverses universités et conférences, en se concentrant spécifiquement sur neow3j et COZ néo-python comme les outils de développement.

Attirer les développeurs

Parallèlement à son travail sur Neow3j, AxLabs a faim d’abaisser davantage la barrière à l’entrée pour le développement sur Neo avec des outils pour capter l’attention des ingénieurs logiciels. À cette fin, l’équipe travaille actuellement sur un nœud Neo IDE & basé sur le code VS qui s’exécute complètement dans le navigateur, en s’appuyant sur son ambition initiale de fournir une expérience de développeur de haute qualité sur Neo.

« Nous sommes obsédés par l’idée que, pour obtenir plus de développeurs de blockchain pour Neo, nous devrions fournir des outils qui abaissent la barrière d’entrée pour ” essayer les choses rapidement et sales «. Le premier contact avec la technologie Neo blockchain est la clé pour capter l’attention de l’ingénieur logiciel. Il devrait être facile de simplement l’essayer.

Conceptualisé comme le « neo Playground », le service permettrait aux développeurs Java d’exécuter rapidement des exemples ou des modèles Neo sans avoir besoin d’installer quoi que ce soit. Différents exemples de code, langages de programmation supplémentaires et autres outils des groupes de développement Neo peuvent également être intégrés à l’avenir. En particulier, AxLabs prévoit une forte intégration avec la boîte à outils Neo Blockchain, rendue possible avec l’ajout de capacités de débogage au compilateur neow3j.