モッピー!ポイ活応援ポイントサイト
未分類

ソラナ開発入門

この記事では、神話、開発ワークフロー、プログラム、dApp(分散型アプリケーション)、クライアントSDKなど、Solanaでの開発に関連する非常に高レベルのトピックについて学び、Solanaでの開発への明確な道筋を示します。この記事は、Solanaを初めて使用する開発者を対象としており、dApp、スマートコントラクト、トークンなどのブロックチェーン開発に関する一般的な知識をすでに持っていることを前提としています。このすべてが理にかなっているなら、この記事は間違いなくあなたのためです。それでは始めましょう!

神話破壊ソラナ開発

Solanaエコシステムに参入する新しい開発者が理解するために最初に重要だと思うのは、Solanaでの構築を開始するためにスマートコントラクトやRustの経験がある必要はないということです。実際、ブロックチェーンの経験はまったく必要ありません。ソラナでは、スマートコントラクトはプログラムと呼ばれますRust C、C ++は、チェーン上にデプロイされるプログラムを構築するために使用される言語です。Solanaプログラムは、チェーン上でユニークで強力なツールを構築するために不可欠ですが、幸いなことに、対話して構築するために利用できるプログラムはすでにたくさんあります。Web2およびWeb3の開発者がサードパーティのSDKを使用して一元化されたアプリケーションでWebアプリを構築するのと同様の方法でdAppを構築できます。唯一の違いは、dAppを使用すると、一元化されたデータベースではなくブロックチェーンにデータを保存し、トランザクション/ストレージのコストはユーザーが負担することです。ブロックチェーンという用語は、多くの開発者を威嚇する傾向がありますが、実際にそれが何であるかを理解するために時間を割けば、実際には威圧的ではありません。

Solana開発ワークフロー

前述のように、Rustを知っている必要はなく、Solanaで構築するためのチェーン上のプログラムを理解する必要もありませんが、dAppの構築に慣れたら、独自のプログラムを作成する方法を学びたいと思うでしょう。Solana、およびほとんどのスマートコントラクトブロックチェーンには、2つの完全に異なる開発ワークフローがあります。

Solanaでのプログラム(スマートコントラクト)の開発は、Rust、C、およびC ++で行われます。これらのプログラムはチェーン上で構築および展開され、Solanaランタイムを介して実行されますこれらのプログラムは、JSON RPC APIまたはこのAPI上に構築されたSDKを介してネットワークに指示付きのトランザクションを送信することによりプログラムとの通信方法を知っている人なら誰でも使用できます。他のオンチェーンプログラムもJSONRPCAPIを利用できます。

なるほど。ネットワーク上にプログラムがあって、そこにアクセスするために、JSON RPC APIを用いて(REST APIのようなもの)アクセスするのか。

dApp開発は、ほとんどのWeb2およびWeb3開発者がよく知っているものです。このタイプの開発には、オンチェーンプログラムへの指示を含むトランザクションを送信するアプリケーションの作成が含まれ、Web /モバイルアプリの構築や集中型APIとの対話に非常によく似ています。Solanaでのアプリ開発の基盤は、ブロックチェーンとの対話を可能にする通信のレイヤーであるJSON RPCAPIです。Solana Labsは、使いやすいsolana-web3.js SDKを作成しました。これにより、使用した他のAPIと同じようにブロックチェーンおよびSolanaプログラムと通信できます。Java、C#、Python、Go、Swift、Dart-Flutter、Kotlinなど、JSON RPCAPIの上に構築されたサードパーティのSDKも多数あります。これらのSDKには、Solana開発者ページ

これらの各SDKを使用すると、Solana上でお気に入りの言語で完全に機能するdAppを構築できます。Solana APIをマスターしたら、Rust、C、またはC ++で独自のプログラムを構築する方法を理解し始めることができます。

JSON RPC APIの一種がweb3.js SDKか。これを使うと、solanaスマコンに指示を出せるのか。基本的にスマコンはRustで書かれているけど、それに命令をだすのはweb.jsSDKを使って任意の言語(TSとか?)でできるようだ。

プログラム(スマートコントラクト)

Solanaでの開発ワークフローについて説明しましたが、Solanaでプログラムを開発することも、既存のプログラムを使用してdAppを構築することもできることを学びました。それでは、SolanaLabsによって作成された今日存在するいくつかのプログラムについて話しましょう。コアソフトウェアリリースの一部として維持されているプログラムには、ネイティブプログラムSolanaプログラムライブラリ(SPL)の2つのセットがあります  ネイティブプログラムはSolanaの中核であり、その中で最も一般的なものの1つはシステムプログラムです。このプログラムは、アカウントの作成やSOLの転送などに使用されます。他の人気のあるネイティブプログラムには、ステーキングプログラムと投票プログラムが含まれます。一方、Solana Program Libraryには、トークンプログラムというさまざまなプログラムが含まれています。、ソラナのイーサリアムERC-20に相当し、最も人気のあるものの1つです。トークンプログラムを使用すると、NFTを含むSolanaブロックチェーン上のトークンを操作できます。このプログラムを使用すると、トークンの作成、転送、書き込み、クエリなど、さまざまなことができます。ネイティブプログラムとプログラムライブラリプログラムの間で、Solana開発の旅を始めるためにいくつかの本当に興味深いdAppを構築することができます。Solanaのsolana-web3.jsSDKとトークンプログラム(トークンプログラムJSバインディングを使用)を組み合わせてトークンアカウントを作成するReactウォレットアプリであるProjectSerumのspl -token-walletリポジトリを  チェックすることを常にお勧めします。トークンの転送。

10,000フィート開発ビュー

それでは、一歩下がって、Solana開発ワークフローの高レベルの表現を見てみましょう。これは、理解しやすい方法で学習するためのSolanaネットワークの過度の単純化であることに注意することが重要です。

図(プログラム)の左上から、カスタムRust、C、およびC ++プログラムを作成してブロックチェーンに直接デプロイできる最初の開発ワークフローを確認できます。これらのプログラムが展開されると、それらとの通信方法を知っている人なら誰でもそれらを使用できます。これらのプログラムと通信するには、利用可能なクライアントSDK(またはCLI)のいずれかを使用してdAppを記述します。これらはすべて、内部でJSON RPCAPIを使用します。

プログラムと読んでいるものと、Dappsは別物っぽい!?プログラムはスマコン、Dappsはスマコンに指示を出し通信するアプリ?

2番目の開発ワークフローは、左下(クライアント)から始まるdApp側で、デプロイされたプログラムと通信するdAppを作成できます。アプリは、クライアントSDKを介してこれらのプログラムに指示を含むトランザクションを送信し、ウォレット、DEXなどのさまざまなアプリケーションを作成できます。これら2つの要素が連携して、相互に通信して状態を更新し、ブロックチェーンにクエリを実行できるdAppとプログラムのネットワークを作成します。

開発者は、Solanaを、世界中の誰もがプログラムを展開し、既存のコンピューターと通信できるグローバルコンピューターと考えることができます。

準備はできています。どうすれば開始できますか?

私が得る最大の質問の1つは、どこから始めればよいかということです。エントリポイントはたくさんありますが、Solanaを初めて使用する開発者は、Solana開発者ページにある現在厳選されたすべてのリソースを使用する必要があると思います。Solanaを初めて使用する場合は、Figment Learn SolanaPathwayから始めることをお勧めします。すでに使い慣れていて、スターターアプリを探している場合は、dApp-scaffoldを試してください。開発者の皆さん、頑張ってください。またお会いしましょう!

figmentやってみた。

 

ABOUT ME
たけ
はじめまして! たけといいます。 20代男性サラリーマンが資産運用で5年で3000万をめざします。 これを読んで自分でも出来るのではないかと思ってくれる人が増えると嬉しいです。 お金を得ることは手段に過ぎません。若いうちに稼いで、自分の時間をより大切なことに使いたいです。 【2019投資戦歴】 投資資金合計 300万 2019年度単年損益(年利) FX 15万(15%) 投信 9万(7%) 株式 4万(8%) ※投信、株式は含み益