Pythonデベロッパーのためのイーサリアム
H
最終編集者: @HiroyukiNaito(opens in a new tab), 2024年5月7日
Pythonベースのプロジェクトとツールを使用してイーサリアムを開発する方法を学ぶ
イーサリアムを使用して、仮想通貨とブロックチェーン技術の利点を活用した分散型アプリケーション (「dapp」) を作成します。 dappは、信頼性の高いアプリケーションです。つまり、イーサリアムにデプロイした後は、常にプログラムしたとおりに動作します。 デジタル資産を制御して、新たなタイプの金融アプリケーションを作成できます。 また、分散化できるため、単一のエンティティや個人は制御できず、検閲はほぼ不可能であることを意味します。
スマートコントラクトとSolidityを使い始める
Pythonをイーサリアムに統合するための最初のステップを踏み出してみましょう。
先に基礎を学習したい場合は、 ethereum.org/learnまたはethereum.org/developersをご確認ください。
- ブロックチェーンの説明(opens in a new tab)
- スマートコントラクトを理解する(opens in a new tab)
- 初めてのスマートコントラクトを記述する(opens in a new tab)
- Solidityのコンパイルとデプロイの方法を学ぶ(opens in a new tab)
初心者向けの記事
- Pythonデベロッパー向けのイーサリアムガイド(opens in a new tab)
- ブロックチェーン2023レポートにおけるPythonの状態(opens in a new tab)
- Vyperを使ったスマートコントラクト入門(opens in a new tab)
- PythonとBrownieを使用して独自のERC20トークンをデプロイする(opens in a new tab)
- PythonのFlaskを使ってイーサリアムコントラクトを開発するには?(opens in a new tab)
- Web3.py入門 - Python開発者のためのイーサリアム(opens in a new tab)
- Pythonとweb3.pyを使ったスマートコントラクト関数の呼び出し方(opens in a new tab)
中級者向けの記事
- Pythonプログラマーのためのdapp開発(opens in a new tab)
- Pythonのイーサリアムインターフェースを作成する: その1(opens in a new tab)
- Pythonでのイーサリアムスマートコントラクト: 包括的ガイド(opens in a new tab)
- BrownieとPythonを使用してスマートコントラクトをデプロイする(opens in a new tab)
- Brownieを使用してOpenSeaでNFTを作成する(opens in a new tab)
発展的なユースケース
- Pythonを使用したイーサリアムスマートコントラクトのコンパイル、デプロイ、呼び出し(opens in a new tab)
- Slitherを使用したSolidityスマートコントラクトの分析(opens in a new tab)
- ブロックチェーンのフィンテックチュートリアル: Pythonを使用した貸出と借入(opens in a new tab)
Pythonのプロジェクトとツール
現在でもメンテナンスされているもの
- Web3.py(opens in a new tab) - イーサリアムとやり取りするためのPythonライブラリ
- Vyper(opens in a new tab) - EVMのためのPythonライクなスマートコントラクト言語
- Ape(opens in a new tab) - パイソニスタ、データサイエンティスト、セキュリティプロフェッショナル向けのスマートコントラクト開発ツール
- py-evm(opens in a new tab) - イーサリアム仮想マシンの実装
- eth-tester(opens in a new tab) - イーサリアムベースのアプリケーションをテストするためのツール
- eth-utils(opens in a new tab) - イーサリアム関連のコードベースを操作するためのユーティリティ関数
- py-solc-x(opens in a new tab) - solc SolidityコンパイラのPythonラッパー (Solidity 0.5xをサポート)
- pymaker(opens in a new tab) - MakerコントラクトのためのPython API
- siwe(opens in a new tab) - Pythonのためのイーサリアムによるサインイン (siwe)
- イーサリアムの統合のためのWeb3 DeFi(opens in a new tab) - ERC-20、Uniswap、その他の一般的なプロジェクトのための、すぐに統合を行えるPythonパッケージ
- Wake -(opens in a new tab) コントラクトのテスト、ファジング、デプロイ、脆弱性スキャン、コードナビゲーションが可能なオールインワンPythonフレームワーク(言語サーバー - Tools for Solidity(opens in a new tab))
アーカイブ済み・メンテナンスされていないもの
- Trinity(opens in a new tab) - イーサリアムPythonクライアント
- Mamba(opens in a new tab) - Vyper言語で記述された、スマートコントラクトの記述、コンパイル、デプロイのためのフレームワーク
- Brownie(opens in a new tab) - イーサリアムスマートコントラクトのデプロイ、テスト、やり取りを行うためのPythonフレームワーク
- pydevp2p(opens in a new tab) - イーサリアムのP2Pスタックの実装
- py-wasm(opens in a new tab) - WebAssemblyインタプリタのPython実装
もっとリソースをお探しですか? ethereum.org/developersをご確認ください。
Pythonツールを使用したプロジェクト
以下のイーサリアムベースのプロジェクトでは、このページに記載されているツールを使用しています。 関連するオープンソースのリポジトリは、コード例や最善の方法として参照でき、役立ちます。
- Yearn Finance(opens in a new tab)とYearn Vault Contractsリポジトリ(opens in a new tab)
- Curve(opens in a new tab)とCurveのスマートコントラクトリポジトリ(opens in a new tab)
- BadgerDAO(opens in a new tab)とBrownieツールチェーンを使用したスマートコントラクト(opens in a new tab)
- Sushi(opens in a new tab)によるPythonを使用したべスティングコントラクトの管理とデプロイ(opens in a new tab)
- Alpha Homoraで有名なAlpha Finance(opens in a new tab)によるBrownieを使用したスマートコントラクトのテストとデプロイ(opens in a new tab)
Pythonコミュニティディスカッション
- イーサリアムPythonコミュニティのDiscord(opens in a new tab) Web3.pyやその他のPythonフレームワークについてのディスカッションを行う場所
- Vyper Discord(opens in a new tab) Vyperスマートコントラクトのプログラミングのディスカッション
その他のリスト
Vyper wikiには、 Vyperに関する豊富なリソースがあります。(opens in a new tab)