paint-brush
永続的な dApp の構築: Cairo が Web3 開発者にとって勝者のプログラミング言語である理由@starknetfoundation
16,034 測定値
16,034 測定値

永続的な dApp の構築: Cairo が Web3 開発者にとって勝者のプログラミング言語である理由

Starknet Foundation5m2024/11/14
Read on Terminal Reader

長すぎる; 読むには

Cairo は高度に最適化された証明可能なプログラミング言語として設計されており、STARK は Ethereum のスケーリングにも最適です。証明の検証には、同じ入力でプログラムを実行するよりも時間がかかりません。したがって、Starknet は文字通り Cairo で書かれており、Ethereum のスケーリングと Web3 アプリケーションの構築を目的としています。 Starknet は、ネットワークが通常の速度低下や高額な手数料なしで大量のトランザクションを処理できるようにすることで、Ethereum のスケーラビリティを強化します。これは、状態の違いのみを Ethereum に投稿し、多数の Starknet 状態遷移証明をまとめて 1 つの証明を作成することで実現されます。つまり、証明コストは多くのユーザー間で分散されます。このプロセスはゼロ知識証明 (ZKP) に依存しており、Ethereum は各詳細を公開することなくトランザクションを安全に検証できます。これは、要約領収書を受け取るのと同様です。 Starknet は Cairo を使用してトランザクションを一括処理し、必要なデータのみを Ethereum と共有することで、コストを削減するだけでなく、トランザクション速度も向上させます。
featured image - 永続的な dApp の構築: Cairo が Web3 開発者にとって勝者のプログラミング言語である理由
Starknet Foundation HackerNoon profile picture

著者: ジェームズ・ストラドウィック、エグゼクティブディレクター、スタークネット財団

「世界を理解するには、カイロを理解しなければならない。」


この感情は、エジプトの作家ナギーブ・マフフーズの言葉とされることが多く、古代都市が世界の文化、政治、歴史の形成に重要な役割を果たしたことを物語っています。


現在、同じ名前のコーディング言語は、Web3 エコシステムを理解する上で不可欠なものになりつつあります。複雑な歴史を学ぶための入り口であるこの都市自体と同様に、コーディング言語である Cairo は、分散化された世界に新たな扉を開き、イノベーションとアクセシビリティを推進しています。


しかし、Cairo が他のプログラミング ツールと比べてユニークなのはなぜでしょうか? また、Web3 開発者がそれを習得するために時間を費やすべきなのはなぜでしょうか?


思い切って最高のものから最高のものを学びたい方は、ぜひ登録してください。スタークネットのブートキャンプに参加して、カイロについて知っておくべきことをすべて学びましょう

カイロは何をしますか?

Cairo は高度に最適化された証明可能なプログラミング言語として設計されており、証明の検証には同じ入力でプログラムを実行するよりも時間がかからないため、STARK は Ethereum のスケーリングにも最適です。したがって、Starknet は文字通り、Ethereum のスケーリングと Web3 アプリケーションの構築を目的として Cairo で書かれています。


Starknet は、ネットワークが通常の速度低下や高額な手数料なしで大量のトランザクションを処理できるようにすることで、Ethereum のスケーラビリティを強化します。これは、状態の違いのみを Ethereum に投稿し、多数の Starknet 状態遷移証明をまとめて 1 つの証明を作成することで実現されます。つまり、証明コストが多数のユーザー間で分散されます。このプロセスはゼロ知識証明 (ZKP) に依存しており、Ethereum は各詳細を公開することなくトランザクションを安全に検証できます。これは、要約領収書を受け取るのと同様です。


Starknet は Cairo を使用してトランザクションを一括処理し、必要なデータのみを Ethereum と共有することで、コストを削減するだけでなく、トランザクション速度も向上させます。

Cairo のユースケース

Cairo の効率性とプライバシー機能は、いくつかの Web3 アプリケーションに欠かせないものとなっています。DeFi では、Cairo によりプラットフォームは低コストで大量のトランザクションを管理できるようになり、サービスへのアクセスが容易になります。NFT 分野では、Cairo はデジタル コレクションの作成と転送をサポートし、トランザクション手数料を削減することで、市場のアクセス性とスケーラビリティを向上させます。さらに、Cairo を使用すると、開発者は既にプライバシーを共通機能として備えている他の証明システムを効率的に検証できます。


Cairo の強力な機能は Ethereum と Web3 の発展に不可欠ですが、その複雑さは開発者にとって学習曲線となります。しかし、それを習得した人にとって、Cairo は分散型アプリケーションの未来を推進する大きな可能性を解き放ちます。

非常に需要の高いニッチなスキルである Cairo は、意味のある方法で大量採用を促進できる長期にわたるアプリケーションを作成したいという志を共有する、同じ考えを持つ人々から高く評価されています。また、より一般的な従来のプログラミング言語と比較した場合の Cairo の明確な利点についても理解を深めることができます。

Cairo と他のプログラミング言語の比較

たとえば、Rust を見てみましょう。


パフォーマンス、安全性、マルチプラットフォーム機能を備えた Rust は、ブロックチェーン プラットフォームや他のアプリケーション全体で柔軟性を求める開発者に最適です。ただし、Ethereum のスケーリングや特定のブロックチェーン アプリケーションには、これらのユース ケースを念頭に置いて設計されている Cairo の方が Rust よりも適しています。Rust には、トランザクション バンドルや ZKP など、Ethereum のスケーラビリティとプライバシーに関する Cairo 固有の機能がありません。Cairo は Starknet および Ethereum と統合されているため、Ethereum ベースのアプリケーションのスケーリングと最適化に重点を置く開発者向けの、より専門的なツールとなっています。Rust はさまざまなブロックチェーン プラットフォームでより汎用性と柔軟性に優れていますが、Ethereum をスケーリングする Cairo が提供する大きな効率性はありません。

カイロ対ソリディティ

Ethereum のスマート コントラクトを作成するための主要言語である Solidity は、ブロックチェーン内の個々のトランザクションを処理するように設計されています。Cairo は、計算整合性の証明を検証するための効率的な言語として、Ethereum のスケーラビリティのニーズに対応することで Solidity を補完します。Cairo はスマート コントラクトとプログラミング言語の両方であるため、オンチェーンとオフチェーンの操作に使用できます。対照的に、Solidity は EVM の外部では使用できないため、ブロックを集約することはできません。


Cairo は、トランザクションのスケーラビリティに重点を置くことで Solidity ベースのスマート コントラクトのパフォーマンスを向上させ、2 つの言語を補完し、ネイティブの計算整合性を備えた大量のブロックチェーン アクティビティを処理するための重要なレイヤーを提供します。

カイロ対パイソン

Python はデータ サイエンス、機械学習、Web 開発の分野でその汎用性と使いやすさで知られていますが、Cairo は Ethereum のスケーリングに特化した証明可能な言語です。Python は初心者に優しい設計、読みやすさ、柔軟性を備えているため、汎用アプリケーションに最適ですが、これらの強みはブロックチェーン固有のニーズには当てはまりません。Python はさまざまな業界に適していますが、Cairo のパフォーマンスは Web3 の需要に合わせて調整されており、ブロックチェーンのスケーラビリティとトランザクションの効率性に適しています。

Cairo 対 C++/Java

C++ と Java は、ゲームやエンタープライズ ソフトウェアなど、スピードと複雑なロジックが求められるアプリケーションで使用される、高性能な汎用言語です。しかし、証明可能な性質と最新のコンパイラ アーキテクチャを備えた Cairo は、シーケンサーのコンテキストで操作を同時に実行でき、実行証明をまとめて数千にまで拡張でき、Ethereum が検証する同じルール セットに対してすべてを制約できます。これにより、Cairo は優れたセキュリティを実現し、StarknetOS ルールに準拠していないブロックは生成できなくなります。


Cairo は、分散型金融と高トランザクション スループットの要求に対応するように特別に設計され、Ethereum ブロックチェーン向けに独自に調整されています。C++ と Java は従来の集中型環境で優れています。Cairo は開発者に優しい証明可能言語であり、大量のトランザクションをオフチェーンで管理し、安全に検証できるため、C++ や Java などの汎用言語では不十分なブロックチェーンのスケーリングに最適です。


C++ と Java のもう 1 つの側面は、ユーザー ベースが大きいにもかかわらず時代遅れであり、言語をほぼ同じままにしておきたいという点です。ここで Cairo が新しいアイデアやテクノロジを採用する能力を備えた異なる言語として登場し、その優位性をさらに証明します。

Web3開発者にとってCairoが重要な理由

Cairo は、特に Ethereum をスケールしたい場合など、適切なツールであればトップクラスの言語ですが、超効率的な (検証不可能な) メモリセーフなプログラムが必要な場合は、Rust が最適です。ただし、Ethereum アプリケーションの需要が高まるにつれて、コストを削減し、速度を向上させるソリューションの必要性も高まり、Cairo は Web3 エコシステムの重要なプレーヤーになります。

開発者はブロックチェーンの従来のコーディング言語の限界を克服し、大規模かつ低コストで動作するアプリケーションを実現できます。Cairo はまだ他の言語ほど普及していないかもしれませんが、Web3 の将来にとって重要です。都市 Cairo が複雑な歴史を理解するための架け橋であるように、コーディング言語 Cairo はよりアクセスしやすく、効率的で、分散化された未来への架け橋です。


習得するには時間がかかりますか? はい。できますでしょうか? ぜひ習得してください。


しかし、やる価値のあること、平凡なことから抜け出して偉大になれることは何でも、献身と努力が必要です。

カイロは一日にして成らず。Web3 もそうでしょう。しかし、熟練した開発者チームがあれば、未来は誰にとってもより良い社会を実現する大きな可能性を秘めています。


思い切って最高のものから最高のものを学びたい方は、ぜひ登録してください。スタークネットのブートキャンプに参加して、カイロについて知っておくべきことをすべて学びましょう