Transcription
1. Intro: Bienvenue à ce contrat Maori
sans terre , pourquoi cela est-il important ? Contrat car mon contrat est programme
MPS est stocké
sur la blockchain. Vous n'avez pas besoin d'une nouvelle course mentale et faites même la poussée
vers les deux corps. Renforcer le Fairplay. Lemma Yslow. Facile à faire option. La transaction coûte
moins d'un centime. Plus vite que Visa. Et comme il est définitivement plus rapide
même si 500 000 TPS, vrais arcs, décentralisation
et startups. Bouche. Patron, il était Bay Company était la faiblesse des
contextes cardiaques de l'utilisateur en temps réel, vous ferez votre écosystème,
vous parlez peu
importe si vous
construisez un jeu vidéo, une banque d'
applications décentralisées. Donc lambda entreprise ou solution
à long terme pour
créer et allouer. Qu'apprend-on
dans ce cours ? Lambda est donc plus
compliqué. Mais je vais créer notre
premier contrat à Solana, des données
inédites pour un
contact asthmatique et stocker ces données en chaîne
et hors chaîne. Nous allons apprendre comment
sérialiser et désérialiser les données, la
fois hors chaîne et latérale. Nous allons
apprendre à transférer l' âme avec un contrat intelligent. Bienvenue dans ce cours. Je suis très content de vous avoir ici.
2. Introduction aux contrats intelligents dans solana: Il programmes à Solana, sont-ils équivalents à des contrats
intelligents dans
d'autres blockchains ? Et ils alimentent le
Défi et les jeux. Chez Dow. Beaucoup d'autres choses. Instructions de
traitement des programmes, programmes. Les programmes sont
apatrides. Programmes. Prise en charge dans les comptes
marqués comme exécutables. Les programmes le sont. Le chargeur Bpf est recommandé pour écrire des programmes en position grossière. Vous pouvez utiliser C plus plus
et voir ce que Ross est plus facile et plus sûr. Les programmes de santé ont une instruction unique au point d'
entrée. Ainsi, lorsque vous voulez
invoquer un programme, les arguments de base
sont l'idée du programme. Vous souhaitez appeler le tableau de comptes, les données d'instructions. Programmes d'écriture. Angkor est une
solution puissante basée sur Ruby on Rails pour la rédaction de
programmes avec des contrats intelligents. accent mis sur la sécurité
est construit sur Salama. Comment rédigez-vous des programmes ? La première étape consiste à
écrire les programmes dans recommandation de
torréfaction et à les
tester sur un hôte local. Ensuite, vous pouvez le
définir ou le tester. Enfin, vous pouvez passer
à la lumière des programmes de maintenance. L'appel de programmation s'effectue en établissant une connexion
RPC avec l'API
du cluster actuel. Le cluster peut être une
maintenance, n'est-ce pas ? Hôte défini et local
pour testlet et définitif, vous pouvez demander si
lambda car les programmes partent dans les comptes et les comptes
paient des unités de loyer Alana. Au début, vous
pouvez effectuer des tests sur un hôte local. Vous pouvez demander quelques pièces
à Solana et tester dans le réseau de développeurs
et le réseau de test. Et enfin, lorsque
votre programme est prêt à être lancé, vous pouvez faire du Solana
et payer le loyer. Parce que nous allons
voir les prochains comptes. Comment jouent-ils un programme ? Une fois que vous avez établi votre
nouvel environnement de cluster, dans le terminal ou
en ligne de commande, vous écrivez le pronom Solana
déployer avec le proton BIPAP. Vous pouvez inclure votre gestionnaire de colis de
fret
si vous êtes en rangées.
3. Cycle de vie du Smart Contrats Solana: Lambda est le cycle de vie de mon contrat. La communication entre
la Terre et la propre chaîne. Le programme peut communiquer
avec le réseau de cylindres. Le projet et un programme sont proposés de trois manières. Par exemple, dans le réseau
Solana rôti, où le programme
vivra éternellement. Tiens-le loin. Avec un client. Nous pouvons envoyer une section d'impulsions en
passant des instructions pour spécifier quel programme dans spécifier quel programme dans
ce réseau d'alarme
nous exécutons, nous pouvons tout à fait une
section d'informations et
la requête utilise l'API JSON RPC Upsilon avec les méthodes approuvées par
Solana, par
exemple, obtenez
le comptage. Un client. Peut communiquer,
peut être n'importe quoi, peut être la ligne de commande, peut être sans réduction de la façon dont l'unité de jeu
Unreal Engine, le but ou tout
robot tiers peuvent être n'importe quoi le client, mais il a besoin pour suivre
les instructions. Pour envoyer l'API RPC, correct ? Formatez le JSON avec le
signal valide pour certains comptes. Nous pouvons donc avoir notre réponse. Transactions.
Les transactions sont composées de signatures. Le message contient l'adresse du compte
Heather. Le compte s'adresse hors
des entités qui interagissent. Par exemple, il peut s'
agir de votre compte. Maintenant que les comptes de
vos amis ou de notre réseau de l'application
décentralisée. Vous devrez passer des tableaux
et bloquer les instructions. Une seule instruction
ne peut appeler qu'un seul programme. Les octets de données sont transmis
sur des modèles passés. Les instructions ne peuvent
pointer que vers un seul
contrat ou programme intelligent. Pass. Le programme peut utiliser ces
données pour effectuer une action. Les instructions sont composées de comptes AD
du programme en version bêta. L'ID du produit est un
contrat intelligent que vous appelez. Le compte est le sous-ensemble des comptes de transactions
ou devrions-nous passer ? C'est ça ? La preuve de l'histoire
utilise ces quatre. Le moment, l'exécution
des programmes. n'y a pas de collisions. Les données sont un tableau d'octets
des données permettant d'effectuer des actions. Nous avons ici un exemple
du programme Solana Hello World
qui est un charbon clair et propre. Dans TypeScript, nous
avons une instruction. Nous avons ici les données que nous avons envoyées à un solide mes clusters à l'API, à la blockchain. Nous devons dire que le programme va désérialiser
l'information. Et ensuite, nous avons
encore dit un peu moins à la réponse. Nous avons une transaction en attente d'envoi
non confirmée. Nous passons ici
une clé publique. Le signataire est faux, non ? W est vrai parce que nous changeons le compteur
du monde de l'enfer, le nombre de fois où
le proton a été appelé sur la chaîne Solana
contient. Ici, nous avons le torréfaction
est mon contrat qui reçoit l'implémentation du paramètre
entrée 0, l'implémentation point d'entrée
du programme
qui a une clé publique. Le programme qui est chargé sur le compte pour
dire bonjour le monde. Les paramètres seront tirés de l'exemple solaire Nick Hello
World sur GitHub. Comme nous l'avons dit, les programmes peuvent être écrits dans Ross
et C plus plus et C recommandé pour
la sécurité et la performance. Multithreading. Les applications. Les applications font partie de la prochaine
génération d'applications. Au lieu d'interagir avec la
base de données centralisée sur un serveur, vous interagissez avec la
blockchain et n'importe qui peut appeler les programmes à la fois. S'ils savent comment utiliser
les contrats intelligents à la fois. Parfois, vous avez besoin d'un signataire. Seul un descendant peut avoir besoin
de la signature de l'ulna. Le programme peut être exécuté. Si vous déployez un programme Selena. De belles vies pour toujours
dans la blockchain. Le coke peut utiliser
des contrats ou des programmes intelligents. Quiconque sait
communiquer avec les programmes en soumettant des transactions avec
les instructions, doit avoir les signatures. La fondation doit savoir
comment utiliser l'API RPC négation pour communiquer avec
la blockchain et apprendre à créer
des contrats intelligents. Les deux sont importants. Enfin, voyons un exemple. Vous avez un jeu vidéo
et votre backend. Vous envoyez la demande
en utilisant un signal
au client qui paie un peu d'une borne d'accès ou sur un PC, il y a un appel à l'action
et il peut signer avec le back-end
pour recevoir un NFT. Vous avez besoin d'une signature
de l'honneur, cet indicateur du jeu vidéo
que le client paie sur le PC. Enfin, si le client accepte payer ces frais pour le NFT, vous pouvez
maintenant
communiquer le client directement à l'API RPC. Et nous deux signatures. L'utilisateur peut recevoir le NFT
qui a beaucoup de valeur. Un exemple de mise en œuvre.
4. Créer et déployer un premier contrat intelligent: Créons un proton
Solana basique, mais ce n'est que la journalisation de la console. Et nous allons
invoquer ce programme
avec cette CLI sur TypeScript. Vous pouvez utiliser un navigateur Web si
vous utilisez une application vidéo. La première étape, nous avons parlé cargo, nouvelle bibliothèque, principale, basique. Nous ouvrons Visual Studio. Je vous recommande d'installer
l'extension pour. Vous pouvez aller à des programmes. Vous pouvez rechercher des préférences de
nickel. Extension. Vous pouvez nous
chercher. Il sera très pratique
pour les compétitions froides. À la source. Je crois que
ce code chauffe-plat. Déplacons la première catégorie
pour obtenir les dépendances. Nous devrons apprendre un programme. Excellente bibliothèque de type. Nous classons la domination. Nous attendons la catégorie.
Je veux aller de l'avant rapidement. Les capacités finissent.
Passons maintenant à notre programme. Bon, donc écrivons le
programme que nous allons
utiliser à partir du programme Salina. C'est génial, nous voulons
utiliser un comptage pour. Nous allons utiliser
le point d'entrée pour ces
exigences pour Rodin. Le point d'entrée. C'est
là que nous écrivons le programme. Aussi le message, ou
nous pouvons provoquer une baisse l'environnement dans le cluster. La clé publique pour savoir. Créons maintenant une instruction de traitement des
points d'entrée. Nous négligeons la fonction qui ne
traite pas les instructions. Nous passons le premier paramètre
du programme. Référence au compte public. C'est un conseiller d'une journée
complète ? Correct. On peut peut-être dire
certains comptes que l'on peut dire console de week-end des Balkans. l'avez
vendu pour lire, nous
passons sur le compte, c'est Si vous l'avez
vendu pour lire, nous
passons sur le compte, c'est
tout le week-end. Enfin, le
tampon d'instructions . Enfin, nous écrivons le
programme. Laissez-moi voir. Où est mon contrat ? Bronze. Par exemple, nous pouvons enfin dire le programme à la fin , nous allons programmer. Ivy, nombre de comptes. Mais nous transmettons des données
de distorsion. Nous obtenons d'abord le
nombre de comptes protons. Les comptes sont liés parce que les comptes du
Père Noël. Enfin, les données. Maintenant, créons un cylindre. Nous pouvons déployer avec un nouveau support. Nous écrivons Lambda Nu. Avec la force. Nous entrons
un peu 39, phrase secrète. Voyez que nous avons la capitale
pour obtenir la clé. Nous y arrivons en
fonction de la copie privée que nous obtenons. Alors, laissez-moi. Ok, donc voici notre gardien que nous
atteignons le terminal. Nous copions, nous les répliquons. Maintenant, nous pouvons équilibrer ce
lemma. Et 0 de notre
gardien de calculs biliaires a demandé R. Nous avons pris une enveloppe et ensuite nous ensuite nous
pouvons voir les mitochondries. Nous pouvons déployer sur les moustiquaires de lit. Nous pouvons voir notre déterminant
que notre URN RPC actuel. Définitivement. Si nous
voulions changer, nous devons écrire le
jeu de configuration lambda avec le collage d'URL plat. Nous pouvons le changer de domaine. Si vous êtes prêt pour les deux. Nous utilisons DevNet. C'est ainsi que vous définissez l'
URL sur le programme BPF. S'oppose à l'avance rapide. Génial, nous avons notre contrat
et nous reconstruisons en groupe blanc. Nous pouvons déployer. Nous devons copier ces lignes. Soyez déployé le programme. Bon, super, donc le
programme est employé. Nous avons un ID de programme. Nous allons maintenant créer le client. Nous pouvons interagir avec le contrat intelligent en invoquant
le programme.
5. Appeler un contrat intelligent Solana par un client: Très bien, nous pouvons
déployer notre programme. Revoyons
ça pour que nous puissions l'obtenir, d'accord, alors maintenant
créons le client. travaille tout ce que j'ai fait trois CLI se déplaçant à gauche,
trois minutes MPA. Les gestionnaires de paquets, afin que nous puissions
coiffer l'apprenant du voyage en ligne. Nous avons tout mis par défaut. Nous MPM. Lors de l'installation de renflements. Et je vais aller de l'avant rapidement. Nous passons au
dossier CLI et nous créons le nouveau fichier qui va
appeler le programme. Nous coiffons déjà MPM style pour pouvoir disposer d'un terminal, nous pouvons fleurir à un fichier absolu. Je vais aller de l'avant rapidement. Parfait. Commençons maintenant à
travailler le programme. Tout d'abord, nous importons tout. Ensuite, nous créons une
connexion avec une constante égale à une nouvelle API de cluster. Nous sommes au lit. Vous pouvez passer
principalement à la fonction bêta. Nous allons appeler le programme, aurions d'abord une constante. Pour la clé privée. À partir de là, vous mettez une
clé privée pour que nous puissions
l'obtenir par série
Lambda. Celle-ci s'aventurera avec n'importe qui parce
que le prochain cas, enfin, nous allons
créer la mission. Je suis allé signer la transaction. L'âme, le proton
peuvent être appelés signataires. Gardez leur clé secrète. Avec la clé. Le programme. C'est conscient. Le programme va
nous
appeler appeler définitivement. Parfait. Maintenant, nettoyons
ça. Et je section, section équivaut à un nouveau recours collectif. Maintenant, nous pouvons l'utiliser pour ajouter des méthodes
pédagogiques. La section peut comporter
plusieurs instructions. Par exemple, ici, nous avons un nouvel arbre. Dans les instructions de section, nous passons les clés. Quels comptes
passons-nous ? Un tableau vide ? Pas de compte. Nous passons également des champs de doctrine. Programmeur, vous transmettez
également des données. Nous passons un tampon
de données vides. Nous sommes situés à 0. Ici. Nous pouvons attendre. Parfait. Enfin, nous
attendons la confirmation. Ok, donc nous avons trois sections de
connexion transsexuelle confirmées. Il peut s'agir de plusieurs signataires. Ensuite, le signal en plein essor vers notre la journalisation de
notre console. Enfin, nous appelons
la fonction principale. Maintenant. Nous pouvons fonctionner avec l' indice
MDX. Également. Vous souhaitez
créer des journaux. Vous pouvez le faire en
utilisant ces Solana. Nous prenons l'URL, définitivement. Nous sommes en train d'ouvrir un WebSocket. Nous attendons.
Nous avons un signal. On va encore courir. Vous
pouvez voir cet atelier et ouvrir tard. Vous pouvez voir qu'il s'agit d'une gestion des
transactions 44. Les périodes du paramètre. Nous le passons 0 points ou cadeaux. Et l'instruction
est un tableau vide. Vous verrez que 44 sigma2, 44. Parfait. Vous avez créé
votre premier contrat intelligent. Vous avez avec un client
hors chaîne. Passons maintenant. Quelques données. Vit pour toujours dans la blockchain et nous pouvons voir les lumières
et cette année, merci de créer des contextes puissants,
c'est la matière.
6. Envoyer des données à un contrat intelligent dans Solana: Bon, alors bienvenue. Nous sommes en train de créer en tant
que client et ce contrat qui reçoit
des données d'un client. Créons une bibliothèque ML. Créons un projet mécanique. Envoyons le programme de l'OTAN. Maintenant. Ouvrons. Oui, je le remarque. Nous devons maintenant installer les dépendances que nous
utilisons le programme lambda. Suivez également la bibliothèque. Excellente bibliothèque de type. Parfait. Maintenant, nous pouvons construire un terminal. Parfait, donc la construction a été
faite avec succès. Passons maintenant
au dossier source. Allez lancer un programme appelé Les, supprimez ce code de la plaque de cuisson. Sauf si vous commencez par utiliser cette
bibliothèque de programmes Helena ou bien. Nous utilisons l'objet comptable pour les
comptes que nous passons. Dans ce cas, nous passons un tableau vide car nous ne voulons transmettre que quelques
données, un certain nombre. Nous utilisons également le point d'entrée. Également pour le point d'entrée où
l'utilisation
de la progression permettrait d'écrire tout le code qui effectue les opérations
dans le contrat intelligent. Nous utilisons également le message
pour la journalisation de la console, en utilisant la clé publique pour transmettre
réellement l'ID du produit. C'est la seule chose que nous
utilisons dans ce programme. Nous fermons.
Définissons maintenant le point d'entrée. Nous appelons la structure
de traitement des fonctions. Mais nous traitons réellement
les instructions. Convertissez les données à partir de données décodées en
octets. Nous définissons l'instruction
de traitement des fonctions. Nous passons comme programme d'arguments AD. Il existe un objet
de clé publique, référence à la clé publique. Ensuite, nous transmettons le compte sous la forme d'un tableau d'objets d'informations de
compte. Enfin,
les données de mon établissement seront notre référence à un tableau
dans l'année de huit bits. Ensuite, nous écrivons le résultat
du programme. C'est tout le code qui
exécutera le contrat. Supports d'angle de fermeture. Nous déclarons d'abord. Nous trouvons également une piste avec la clé, le reste. Asa. Porte dérobée. Nous voulons diviser ces deux
données. D'abord. Nous
allons également jouer. Ensuite, pour obtenir la valeur
que nous
transmettons, nous déclarons une valeur variable de type lors de la signature 64 bits. Nous utilisons le reste. Remanent. Nous passons de 0 à non-inclusifs les
huit éléments du tableau. Ensuite, nous effectuons une tranche. Il y a de la
lumière lumière cartographier ces données, les mapper à un entier
de 64 de Little Endian. Nous sommes debout, ou s'ils
étaient debout, nous avons réussi. Nous avons défini la valeur par défaut. Parfait. Message annonciateur. Il s'agit d'un journal de console. La valeur. Malheureusement. Parfait
Nous sommes arrivés avec, je finis l'appel
pour le contrat intelligent. Nous avons passé quelques données et nous avons le code
de Little Indians. Utilisez un entier 64 bits. Il est maintenant temps de déployer le programme et de créer le
client qui peut invoquer. C'est mon contrat. Nous obtenons donc le
répertoire de l'interface pour que le client
devienne le répertoire client. Et nous npm, nous avons besoin
du gestionnaire de paquets. Nous avons tout défini par défaut. Nous y allons, nous n'installons pas
les dépendances. Nous utilisons Lambda work trois AS, nous attendons que l'
un d'entre nous avance. Parfait. Maintenant,
installons également. Car d n'est pas un script. Non. Parfait. Maintenant, npm installons le grand numéro. Il existe une bibliothèque de scripts
pour le codage et le décodage. Cep doit être numéroté OJS. Créons maintenant
notre point d'index ds, notre fichier TypeScript qui
communiquera un appel, la grille du programme, la
connexion au cluster. Je suis en vrac
et j'envoie des données. Parfait. Tout d'abord,
importons notre bibliothèque Solana. Prochaine leçon. Nécessite une constante, la bibliothèque grand nombre. Nécessite. Suivant. Créons la connexion en tant que constante à l'aide de la classe de
connexion. Brossage de l'URL de l'API Cluster. Certes, mais vous pouvez également
utiliser minute si vous êtes dans le code de production. Super. Ne créons pas la fonction
machine. Principal. Je veux
écrire tout le code. Commençons par définir la clé. Le singe fait un caret. Créez l'ONU, itérater à partir de notre clé privée est un
tableau d'entiers. Comment obtenir notre clé privée ? Lambda Nu ? Nous pouvons créer une nouvelle paire de clés. Nous devons forcer. C'est une
façon d'obtenir un gardien. Vous entrez dans un phosphore. Vous obtenez la racine
de votre paire de clés. Dans ce cas, nous en avons
déjà créé un auparavant et c'est
déjà dans le confort. Git config, config, get. Nous pouvons obtenir toutes les valeurs par défaut. Nous approfondissons et nous obtenons une copie pour obtenir le
tableau réel d'entiers. Il s'agit d'une zone d'entiers. Nous le copions et le collons sur le taux directeur de
huit bits entiers. Assignateur, nous jouons à travers
une astuce web plus profonde. J'ai travaillé trois, je l'ai
gardée de la clé secrète. Nous passons. Ensuite, nous définissons le film. Donc, pour obtenir les paramètres, nous devons réellement
déployer le programme. Nous devons y retourner. Définissons ces paramètres en tant que clé publique à trois points
Web. Clé publique. Nous passons une chaîne, une chaîne comme constructeur,
le hachissons proton du flux. Nous devons donc y retourner. Nous vérifions notre solde. Nous avons tellement lemme epsilon que vous les demandez plus tard. La corde avec Nana, le nombre de Solana
que vous voulez indéfini. Nous connaissons WACC et nous ferons BPF. Nous avons maintenant la chaîne d'identification du
problème. Maintenant. Nous disposons de la
clé publique pour le paramètre. Créons maintenant les données que
nous allons envoyer. Avec des données constantes. Utilise un tampon de type. Nous offrons à partir de. Nous utilisons l'uint8. est C'est un gros numéro. Prenons une pause, par exemple, dans le numéro trois,
nous utilisons les Indiens. Parfait. Créons maintenant une transaction. Transaction. La nouvelle section. Quelle est donc la section qui contient
plusieurs instructions ? Nous ne faisons que transmettre quelles
instructions à cette transaction. C'est pour appeler le
programme qui envoie les données. Nous avons les
instructions relatives aux transactions. L'instruction
contient uniquement les comptes. Nous passons les comptes qui peuvent être crédités ou débités. Dans ce cas, nous n'
envoyons qu'un tableau vide de
l'objet de transaction, besoin du nom
de compte des clés et nous passons
un tableau vide, puis nous avons besoin de la
programmabilité. Enfin, les données sous forme de tampon. Nous passons, nous
passons ces huit tableaux. Enfin, créons
une attente car elle peut durer plus d'
une seconde, quelques secondes. Nous utilisons une transaction
confirmée d'envoi Web trois. C'est à ce moment que nous
demandons le portefeuille. Ou dans ce cas, nous
avons déjà l'affectation parce que vous n'êtes que dans
TypeScript sans navigateur. Nous réagissons maintenant. Ici,
nous devons transmettre la
connexion à la transaction
et le tableau de signataires peut être
plus d'un signataire. Vous pouvez donc débiter plus d'un point permanent signataire
ou une clé privée et une paire de clés
publiques. Ensuite, nous allons
consigner le signal pour obtenir cette fonction de flèche. Nous disons qu'ils sont tous des fonctions que
nous voulons consoler. Parfait. Appelons maintenant la fonction
principale. Maintenant, dans le connecteur Web du terminal , nous pouvons voir les
journaux des programmes. Nous avons donc besoin de l'identifiant du problème. Lana se connecte par programmation. Avec un indicateur d'URL. Certes. Nous obtenons notre
socket afin de pouvoir lire tout le journal
de la console à partir
des contrats intelligents rôtis déployés sur chaîne. Maintenant, nous appelons le client avec MPI X d est nul, et notre fichier. Ici, nous avons deux terminaux. Le WebSocket qui
imprimera tous les contrats intelligents
dans le terminal principal. Je suis sur le code d'abus terminal. Nous imprimons le sigma deux. Comme vous pouvez le voir. Cela peut prendre
quelques secondes car Q nous avons vu un outil et nous avons la valeur numérique trois
parties, c'est toujours génial. Cela apparaîtra également dans le, comme vous le voyez si je vois également
leur terminal local. Super. Maintenant, courons à nouveau. Websocket peut se fermer
car il ne s' ouvre que pendant moins d'une minute. Vous pouvez exécuter à nouveau, il y a eu un peu comme vous pouvez le voir, nous avons reçu le numéro trois
de la transaction. course à pied. Une fois encore. Comme vous pouvez le voir, nous
avons la valeur 321 et nous écrivons le code, et nous avons également l'outil de
signature 44, ainsi que dans notre nouvelle feuille 44
permanente locale. Donc, tout est parfait.
7. Serialize et Serialize enregistrez des données sur compte avec Solana Program: Dans ce tutoriel, nous
voulions apprendre à sérialiser et à désérialiser les données. CUTLAS signifie donc
créer un flux d'octets. Nous pouvons l'envoyer. Ensuite, nous recevons le flux d'octets, nous désérialisons et nous
traitons, nous effectuons des modifications dans l'objet. Ensuite, nous les utilisons à nouveau pour sauvegarder ces informations
sur un programme Solana. Nous utilisons Birch Board nous
permet, par exemple, d'avoir un objet JSON et
de voir les alliés dans le client
JavaScript puis émerger
dans notre contrat intelligent. Nous pouvons désérialiser
en une structure. Nous pouvons utiliser toutes les
données, apporter les modifications. Ensuite, nous pourrons le revoir et
l'enregistrer sur le contrat intelligent. L'utilisation du panneau Birch est synonyme représentation d'objets binaires, licence
CDL pour
vous hacher dans
des projets critiques de sécurité qui représentent 30 cas, cohérence, sécurité et rapidité. Nous sommes donc certainement
un grand allié de Solana parce qu'il est axé
sur la sécurité et la vitesse. Et comme nous le disons, la sécurité
et la cohérence. Qu'est-ce que la sérialisation
et la désérialisation ? La civilisation est un mécanisme de conversion d'un objet
en flux d'octets. Pour cela, nous utilisons notre tampon. Nous avons un objet
converti en tableau, par
exemple. Dans les oreilles de huit bits. personnalisation est un processus de conversion du flux d'octets en un objet réglementé qui n'était pas uni
par le flux d'octets. Commençons. Bon, donc la première étape, nous voulons créer la catégorie, la catégorie avec
la bibliothèque plate. Ensuite, nous ouvrons un studio.
Vous ouvrez le dossier. La première étape consistera
à installer des dépendances. Tout d'abord, la catégorie,
les dépendances des règles. Et nous créons également CLA de l'
annuaire du client terminal . Dans le Gadigal. Nous utilisons pour ces violets, ce programme, le rationnel, vous pouvez obtenir le dernier. Nous utilisons maintenant la version 1.11.2. Ensuite, nous utilisons également les directions
Bosch. 0,91. Pour bibliothèque, bibliothèque. Nous le sauvegardons. Nous gérons la catégorie. Ce sont les
dépendances dont nous avons besoin pour créer le contrat intelligent. Insuline. Je vais avancer rapidement
car cela prendra un certain temps. Ok, parfait. Nous avons donc
créé un dossier pour que le client puisse accéder à une CLI. Pour la recréation, npm, nous devons créer le paquet JSON,
tout par défaut. Vous voulez y entrer. Ici, comme vous pouvez
le voir, emballez Jason. Nous devons créer des dépendances que
nous utilisons pour ce projet. Celui-là ? Oui. Il s'agit de communiquer avec
l'API asiatique ou PCA. Nous pouvons envoyer des transactions, nous pouvons interroger ces
données dans un compte. Nous avons également besoin de Ferroni. Nous sommes en train de créer un script TypeScript. La version quatre va
être alors qu'ils réduiront les types, null. Matin, TypeScript. La réduction de la longueur est un. Alors que tampon de lavage. Pour ces six. Nous utilisons également cela. Nous allons apprendre cette disposition de tampon. Avec cela, nous
allons aider
le client à créer le
tampon et les données sérialisées. Fidèle le week-end,
envoyez un code de sous-octet. À cette fin, solution 3. De même, alors qu'en utilisant plus, utilisons la dernière version. Aussi pour moi, TypeScript,
nous utilisons. Le dernier à embarquer concerne la sérialisation et la
désérialisation des données. Ces tableaux côté client, dans TypeScript, vous pouvez
utiliser une application directe. Toute application utilisant TypeScript peut
être un navigateur Web, peut être qu'un serveur. Enfin, nous devons construire
ces paquets npm, donc nous lançons npm install. Ceux-ci vont décrocher ou les anciennes
dépendances client pour TypeScript. Je vais avancer rapidement car
cela prendra un certain temps. Nous commençons par importer des
dépendances que nous utilisons. Nous utilisons le tableau. Et le conseil d'administration. Quoi d'autre ? Nous utilisons
le programme Lamina. Nous utilisons les informations du compte. Nous utilisons le prochain
compte, les informations de compte. En utilisant également le
programme Solana, le point d'entrée. Depuis le point d'entrée. Proton. Nous utilisons également le message pour connexion de
console dans le salon à longue
chaîne d'un cluster. Et nous utilisons le programme. Alors que vous utilisez un programme, vous constatez le coma. Et ce sont là les
dépendances que nous utilisons. Maintenant, l'étape suivante, porte est, définissez le type d'
histoire de succession quand les comptes. Nous allons
écrire la notation. C'est ce qu'on appelle des traits. Nous pouvons donc hériter
de certaines fonctionnalités. Vous verrez à la
fin de cet objectif que nous allons utiliser,
cette zone se trouve. Dans ce cas, nous avons raison. Nous sommes en train de créer en tant que public. Nous appelons un nouveau compte. Nous n'avons qu'un seul membre. Ils sont de type 32. Parfait. Créons maintenant
le point d'entrée pour la fonction d'
instruction de traitement du programme. Créons maintenant de traitement des fonctions
publiques paramètres d'
instruction de traitement des fonctions
publiques. Nous utilisons ici. Référence au type. Nous transmettons les comptes MLF, référence à un autre
tableau d'informations de compte. Enfin, nous transmettons des données
de production. Mais c'est une référence à un
tableau d'entiers de 8 bits. Parfait. Nous le sauvegardons. À la fin. Nous devons créer
la racine des programmes. Nous écrivons tout notre code, et à la fin, nous avons utilisé du photon. D'accord ? Nous allons écrire ici. La première étape consiste
à obtenir le compte. Nous pouvons donc lire le taux
du compte lancé. N'oubliez pas que les comptes
peuvent conserver leur solde. Bumpkins et Beta. La violence est connue sous le nom équilibre
Solana ou vous
pouvez détenir un jeton, un NFT par exemple. Écrivons la combinaison de paramètres. La première étape consiste à
créer un éther. filet. Les comptes correspondent à la
référence, à la référence aux comptes, mais
ils obtiennent le premier compte. Votre compte. Il équivaut alors à compter le compte. Nous économisons. Nous devons rendre une promesse. Si vous souhaitez obtenir
le deuxième compte. Si vous venez, vous
passez plusieurs comptes, vous pouvez avoir un compte
pour écrire ces deux comptes. instant, nous n'
avons qu'un seul compte. Passage. La prochaine étape, nous
avons le compte. Commençons à décoder l'
instruction que nous avons passée. Nous travaillons d'abord. Vous pouvez
voir ici, dans ces deux-là, que
nous avons travaillé avec des comptes. Traitons maintenant les données de
l'établissement. Nous pouvons consigner le code. Commençons à appeler.
La première étape. Nous pouvons créer une variable, appeler des données, la recevoir. Que nous recevons
un codage, un CDL. J'ai dit des données provenant d'un client plus âgé. Nous devons d'abord déniveler le DCD. Nous avons reçu avec
compte d'estimation les lignes CDR. En exécutant ces métaux à partir des données d'instructions. Nous cartographions. C'est pour éviter les données, et nous gérons l'erreur. Nous écrivons le message s'
il y a un texte étroit, large, par
exemple, seulement. En fait. Enfin, nous écrivons le programme des instructions et des données
non valides. Maintenant, nous utilisons du brome. Maintenant, si cela ne
lit pas mon étroit, nous pouvons consoler
l'objet journal qu'il n'est pas. Tout va bien ici. Maintenant, faisons un contrôle de sécurité. Nous avons déjà travaillé avec les données. Et avec les comptes. Nous obtenons le compte. À la fin du programme,
nous allons l'utiliser. Et maintenant, travaillons
avec le proton. Peut-être. Lançons un contrôle de sécurité car vous téléchargez
le compte. La plupart figurent également sur l'ID du produit. Vous seul pouvez donc modifier les données. Imaginez que vous
publiez cela et que n'importe qui
puisse modifier les données. Il ne sera pas sécurisé
pour votre projet. En cours d'exécution ici, contrôle de sécurité. Avant de rédiger quoi que ce soit, nous devons rédiger les contrôles
de sécurité. Si le propriétaire du compte, il n'est pas égal au programme. Nous allons retourner le
programme, c'est fini. Mon contrat. Nous ne nous limitons pas. Il sera approuvé sur le
type de métal sous forme quadratique. D'accord. Parfait. Si tout va bien. Si vous êtes le propriétaire, vous envoyez le compte et le compte que Cal ce contrat intelligent est également
le propriétaire du contrat. Incrémentons maintenant ce nombre
total de fois. En ajoutant la première
CELAC, les données du compte. Habituellement, nous avons la
licence CDL, les données, la recevons. Maintenant, nous devons désérialiser
avec ces mêmes méthodes, à la
fois les données du compte. Laissez-nous le faire. Nous allons brièvement rendre compte. Nous utilisons également ce métal
que moi, fermiers esclaves. Nous utilisons le compte, la référence au compte. interrogation.
Tout est parfait. Parfait. Nous devons augmenter le compteur ici, nous avons
désérialisé les données. Maintenant, nous utilisons ce compte. Nous tirerons la valeur
équivalente que le ménage récepteur. Nous voulons changer de comptoir. Le comptoir. Nous allons
ajouter le récepteur. Comptez que nous ajoutons. Enfin, nous devons voir des retards. Nous disons que nous devons changer
ces deux éléments mutables. Nous pouvons changer. Enfin, nous
devons voir leur vie. Encore une fois, le débat que
nous écrivons ici. Retards dans le compte. Nous pouvons utiliser cela, vous vous rendez compte, parce que nous utilisons des
plaques comme vous le voyez ici, nous utilisons le compte
circulant. Les deux utilisaient l'héritage de
ces traits de la servitude. Parce que, comme vous le savez, grossier
n'est pas une
programmation orientée objet, mais elle utilise des traits pour faire ce type de choses
avec des annotations. Script, cela va se
souvenir des protocoles. Par exemple, nous voyons les
poux et nous utilisons cet objectif, le compte. Morale. Parfait. Enfin, nous pouvons un tel
journal de console. Nous pouvons les écrire. Nous passons le compte écrit. Super. Ils pourraient donc contracter des contrats pour TBL AC et BC TLA dans les données. Maintenant prêt, nous devons
déployer ce contrat. Nous allons donc au terminal. Nous avons un problème avec eux, marquant Gloucester
avec le DevNet. Nous sommes en train de déployer
sur le réseau de test qui est opérationnel maintenant parce que
beaucoup de gens font appel à Solana avec beaucoup de succès. Il y a beaucoup de développeurs. Munoz. Nous retournons à notre terminal et nous
devons les changer. Pour changer, vous développez Solana, conflit avec l'URL du drapeau et vous définissez le test. Maintenant, vous communiquez avec
le RPC, n'est-ce pas ? Vous vérifiez pour que Lana,
équilibre, intestinal, vous pouvez en demander certains,
nous avons un peu de Solana, vous pouvez en laisser tomber
un par exemple. Nous en avons un. Enfin, nous exécutons
la vue des catégories BPF pour compiler le programme. Nous pouvons le télécharger sur eux. Déployé dans le
Gloucester. Gloucester. Parfait. Donc, pour déployer des copies,
nous
voulons obtenir un produit. Nous allons
vérifier le paramètre V sur un explorateur de blocs. Enfin, vous copiez
votre paramètre. Vous explorerez un explorateur docile et
cet explorateur de blocs bleus. Vous devez les changer. N'est-ce pas ? N'est-ce pas ? Un peu lent, car il y
a beaucoup de gens qui réalisent des programmes à
Solana et dans le monde entier. Vous pouvez voir que vous avez
écrit ici, laissez-moi. Vous pouvez voir qu'il y a beaucoup de gens qui ont également trouvé quelqu'un sur
ce paramètre
basé sur le socket Web. Vous pouvez voir ici l'
adresse du programme. La violence est exécutable. Le poids de ce
beau
compte est également le propriétaire du compte qu'ils ont pour seul.
Je vais voir 4.1. Maintenant que nous avons
déployé notre programme, nous voulons travailler
du côté client. Nous passons au dossier client. Créons maintenant le client. Nous créons donc le dossier de
l'interface de ligne de commande pour le client. Nous sommes allés créer
ici un nouveau fichier, groupe de tuyaux de livre d'
index. Nous avons le dossier.
Nous voulons copier. La première chose à faire est d'importer les dépendances.
Nous utilisons la planche. Nous importons également le
Web trois depuis Solana. Alors que l'importation du dilemme des termes de la
couche tampon. Nous sommes également 14 tampons. Un meilleur effet. Définissons maintenant leur compte à clé
publique où nous allons devenir Web. Dot fuyant. Parfait. Créons maintenant une classe qui stocke l'état du compte
DayGreeting. Nous créons le verre, nous le
renommons. Comte. Ce que nous allons
couvrir compte ici, cela va être
initialisé en tant que 0. Constructeur avec le compteur de champs AS. Le nombre est égal à deux. Les champs sont des champs. Ensuite, nous avons mis ces comptoirs. Parfait. Définissons maintenant le schéma qu'il utilise pour la sérialisation
et la désérialisation. Alors mettons ici, nous écrivons en chimio. La chimio équivaut à la nouvelle,
en les repérant. Ici. Compte de lecture plus. L'utilisation du genre est que nous utilisons avec le compteur de champs. Signature 32. Nous fermons cela. Parfait. Voyons maintenant la taille des salutations. où vous voyez les CLA. Cras rend compatible. Ces objets, à la fois en
JavaScript et engrossés, dans ce cas, avec TypeScript. Nous utilisons donc, nous voulons obtenir
la taille de ces CLAS, une carte objet car nous
voulons envoyer des Solana. Nous n'achetons pas, nous ne payons pas de loyer et nous restons éternellement dans
le cluster de destination. Nous écrivons const est égal à c retards. Schéma de salutation de jour. Nous créons une nouvelle instance plus une
nouvelle instance de la classe du compte battant
Perfect virgule. Ensuite, nous obtenons la longueur. Avec ces programmes. Avec cette utilisation, nous
pouvons obtenir une taille négative. Nous pouvons obtenir plus tard, nous passons la taille afin
de calculer le nombre de Lamport
dont nous avons besoin pour être exemptés de loyer. La prochaine chose est
de créer une connexion. Créons donc une connexion. Comme je l'ai dit, nous utilisons,
n'est-ce pas ? En raison de preuves, cela
ne fonctionne pas actuellement. C'est parti. Connection, une nouvelle connexion. Cluster de livres. Le test n'est pas parce que les divinités
ne fonctionnent pas en ce moment. Beaucoup de gens sont toujours
des paramètres excellents. Tom, c'est ça. La semaine prochaine, nous pourrons
assumer la fonction. Nous allons créer une fonction
asynchrone principale. Ici. Nous allons créer cet équivalent à partir de. Et nous avons besoin ici,
nous avons la clé. Nous avons donc besoin de notre tableau d'entiers de huit bits. Donc, pour obtenir ce d mu, vous devez écrire
le drapeau de force. Il travaille pour Lana. Avec
le plan de force. J'en ai déjà un, donc je vais faire Solana. Ici, j'ai ma paire de clés, c'est Apache CLI. Cli. Vous pouvez obtenir cela qui m'
amènera à obtenir ces numéros, ces copies. L'étape suivante consiste
à créer un tampon. Nous allons donc utiliser
cette disposition de tampon. Tout cela est une dépendance à l'application, anciens élèves d'
escapades afin que nous
puissions interagir et nous
pouvons utiliser JavaScript pour
créer un tampon, créer le code octet et nous
envoyer ce bytecode à
tous et un contrat d'asthme. Et nous pouvons désérialiser les données ,
puis effectuer à nouveau les opérations et DTLS pour les enregistrer. Nous créons donc une disposition
égale à la disposition de la mémoire tampon. Le type, struct. Plus complet. Affectation 32. Ils sont parfaits. Alors maintenant, laissons les données. tampon. Nous le sommes, avec le tampon. Nous sommes en train d'allouer la mise en page. Parfait. Enfin, nous allons retarder les retards. Ou par temps froid, ils sont comptés. Nous pouvons dire,
par exemple, une valeur trois. données. Parfait. Maintenant, nous avons notre tampon. Créons maintenant le cédant
parce que nous avons besoin d'un compte, cette clé doit créer
un signataire qui est un gardien. Nous pouvons payer le coût de transaction pour le prix d'appel
du programme et de la création du
compte pour stocker les données. Devenons designer. Donc nous écrivons,
appelons ça signataire. À partir du
point de type trois, restez nu. Nu. Maintenant, on vient de clé
secrète, de la clé publique. Maintenant, nous avons le centre. Maintenant, créons un polychète
avec un paramètre permanent, nous avons le paramètre en haut. Ici. Ce programme constant. Le type, Web trois points, crée une nouvelle clé. Le programme peut être. Parfait. Nous avons donc maintenant une clé publique. Le système permanent. Maintenant, la première
fois que nous appelons le programme, nous devons créer un fichier sauvegardé. Pour créer la première chose nous leur créons un compte que
nous créons. Vous pouvez donc mettre n'importe quoi. Ce qui doit être unique. Pour le détour élite de la
sécurité du salon. Rubrique de mise en cache. Nous créons le compte
avec la graine. Nous passons la clé publique signataire, cette IV, qu'il
peut s'agir de n'importe quel texte. textes sur le programme avec
la prochaine étape consiste à déclarer, laisser cela égal à 0, puis à obtenir le lampadaire pour
obtenir l'exception de loyer. C'est vrai ? Le forfait équivaut à attendre. Nous utilisons une connexion. Exception de solde minimum. Nous passons devant le Grec King
Size. Parfait. Parfait. Ensuite, créons
la transaction. Nous passons deux instructions. La première instruction pour créer ces comptes et
transférer les ports de lampe, sorte qu'il vit éternellement dans
la deuxième transaction, nous l'utiliserons pour
invoquer le programme. Nous allons donc noter la première,
la première transaction. Définissons donc d'abord
la transaction. Créons donc une section. Appelons ça la transaction. Pour ce projet, nous
créons un nouveau web trois points. Parfait. Nous avons convenu de cette transaction. Maintenant, moins de consommation. Nous utilisons un programme de
système Web. Parce que le problème système est celui qui
a créé le compte. Crée le compte à bas prix. Passer un objet à partir de la
clé mal est l'affectation. Pour base entièrement clé. La clé publique. Ensuite, cette réunion de l'IEP. Parfait. Ensuite, nouvelle clé de compte. Ensuite, les ports de lampe doivent avoir une taille d'espace d'échantillonnage
aléatoire. Enfin, le programme peut être
plus une virgule qui se ferme. **** ici. Nous fermons ici. Tout d'abord,
le programme
système crée un compte envoie certains
ports Lamp au compte. Le compte est loué XM et peut vivre éternellement dans la blockchain. Nous devons maintenant créer
une autre transaction. Bon, alors ajoutons maintenant une deuxième instruction
à une transaction. Vers une section plus simple. La section peut comporter
plusieurs instructions. Si une instruction échoue, toutes les transactions
échoueront et reviendront à l'état
précédent. Nous allons donc l'application de
point de transection appelée New avec une structure de
transaction à trois documents. Maintenant, arrêtons les quatre premières touches. Ici, nous passons le compte. Dans ce cas, nous sommes en train de passer. Pour clé publique. Nous devons passer un objet. Pour le bien public. Nous avons dépassé le compte. Clé, signataire. Ce compte n'est pas
signataire et facilite
le travail , car nous
sommes en train de le sauvegarder. Parfait. Ok, donc le prochain dans l'
objet e est le produit. Peut-être. Le dernier débat. Parfait. Nous appelons notre deuxième instruction. Nous disons que ces copains de données, ces tampons avec un compteur. Nous disons le numéro
trois au comptoir. Donc, tout ce que nous exécutons cela, nous appelons cette fonction va contrer dans l'amas onchange et
gonflé du cou. Enfin, nous allons nous réveiller et confirmer la transaction. Avec le passé, ce lien. La transaction, le
tableau de signataires, les signataires peuvent être plusieurs signataires. Dans ce cas, un seul. Puis, point. Ensuite, nous passons le signal pour y jeter un coup d'œil. raisonnable. Enfin, travaillons ici
sur une nouvelle fonction. Signalez les salutations. House1, une fonction sinc. Nous utilisons d'abord une constante, nous obtenons la comptabilité. Nous demandons donc à
la blockchain le compte. Nous lisons le
nombre de salutations, le numéro dans le
contrat intelligent du compte que cela pourrait contracter
des droits sur les données, nous attendons notre connexion. En l'utilisant, la comptabilisation de ces listes de comptes
spécifiques. En utilisant leur schéma d'accueil, compte, données
de compte. Enfin, nous sommes en train de consigner la console. Coma, coma. Nous utilisons un numéro, accueil, un compteur, coma, coma. Fermez ce rapport. Nous exécutons donc ce code. Lançons MPM. T est un indice. Nous pouvons maintenant aussi le lemma de masse osseuse. Nous avons besoin du chromosome. Nous avons des chocolats préliminaires. Appelons ça comme ça. Nous devons gérer
cette bijection. À mettre ici si les informations de
compte sont égales à gamma. C'est génial d'avoir quelques erreurs pour que
nous puissions déboguer et apprendre. Parce que nous
ne devons pas nous tromper, mais nous devons
exécuter la fonction principale. À la fin, nous exécutons
la fonction principale. Ouvrons cette ouverture, je vais tellement bien,
parce que vous êtes ici. Nous ouvrons une
socket Web ici, aux journaux de la chaîne. Nous avons le numéro trois, non ? J'ouvre peut-être le WebSocket tard. Donc, si vous souhaitez
réexécuter ce code, recommandé, vous pouvez le modifier. Voyez-vous qui comptez le meilleur moyen de
commenter cela car nous ne
créons pas compte déjà
appelé compte. Aussi, nous avons ici où compte au lieu de BB King
et obtenir avec pas cher. Recommandez ces lignes. Et nous créons cette
clé mal égale trois nouvelles. Entièrement clé. Nous passons ici. Par exemple, énumérez quatre au lieu de trois. Maintenant, je veux en avoir
sept. Ici aussi. Connectons-nous à
un socket serveur. Healing Visual Studio
ou les journaux hors chaîne ici
du client. Et sur le terminal, nous créons
ici un socket pour déverrouiller le
Unchained sur le cluster. Ils ont donc des journaux différents. Nous avons dit que le
débogage double face est génial. Nous devons économiser sept
fois la grille car nous
ajoutons le nombre que nous passons est ajouté aux
sept fois précédentes. Peut-être que l'atelier ne fonctionne
pas. Essayons encore une fois. Vérifiez si nous sommes dans le courant. Bon, alors commençons par
exemple, de sept à 14 ans. Bon, enfin, il y a un truc. Si vous n'obtenez pas les journaux, le non coché, vous pouvez
ici tous les journaux, puis vous pouvez copier l'ancien l'ancien texte et vous pouvez vérifier, par
exemple, nous pouvons
commencer à écrire cela. Vous n'écrivez que Solana Look
URL et vous transmettez cela. Nous gérons le programme. Vous devez
copier tous les, tous ces, parce que
parfois je ne sais pas pourquoi il ne s'agit pas d'
un produit spécifique. Mais ici, vous le verrez. Cela fonctionnera là où nous
copions tout le texte, recherchant notre programme. Nous attendons qu'il soit à 21 h 121, donc nous copions tous les éléments communs. Lorsque nous copions, nous pouvons
ouvrir un nouveau collage tout le texte pour Contrôler un contrôle T ou Commander une visionneuse dans
ma feuille de contrôle. Vous collez tous les journaux. Il y a beaucoup de bûches. C'
est pourquoi cela ne fonctionne pas. Vous recherchez votre
produit, peut-être les journaux. Parce qu'il y a beaucoup de monde, je sais qu'il y a beaucoup de peinture de
bootcamp dans le monde. Voici les journaux qui suppriment le
compteur sept. Comme vous le voyez. C'est génial. Nous avons droit au contrat
ultime, mêmes données en sérialisant désérialisant et en
guérisant
les journaux, en ligne et hors chaîne. C'est tellement merveilleux. Vous êtes un
peu plus près de votre objectif.