Ethereumの開発用ツールリストが公開されていた!

Ethereum(イーサリアム)

ALISのCTO石井さんがつぶやいてたんですが

ConsenSysのgithubでEthereumの開発用ツールリストを公開していました。

どんなツールがリストに掲載されているかさらっと見てみたのでメモがてら残しておきますが、だいぶなげやりなコメントが続きますので参考にしないでください。

Sponsored Link


初心者が最初に扱うべきツール

この辺りは定番ですね。Ethereum開発環境を調べているとすぐに出てくるツール達です。

Solidity – もっともポピュラーなスマートコントラクト言語。
Truffle – もっともポピュラーな開発フレームワーク。
Metamask – Dappsに接続できるChromeの拡張ウォレット。
Truffle boxes – Ethereumのパッケージ管理

開発用ツール

スマートコントラクト

スマートコントラクト言語

Solidity- Ethereum smart contracting language
Bamboo – A morphing smart contract language
Vyper – New experimental programming language
LLL – Low-level Lisp-like Language

があります。自分は Solidity しか触ったことがないです orz

フレームワーク

Truffleを含めて7種類紹介されていました。
ただ、Truffle使えればいいんじゃないかと個人的には思ってます。

IDEs

Remix, Atom(solidityのsolidity)などが紹介されてます。
VimやVisual Studio,Intellij もPluginで対応しているそうです。
Atomにはいつもお世話になってますがやはりIDEは自分が使いやすいものがいいですね。

Test blockchain networks

テストネットワークを作ってくれるツールです。
Ganache 一択で良いんじゃないでしょうか、、、といってみたものの他のツール知らないや。
テストする時はノードとか立てずにすむんで、ほんとかかせないです。

Communicating with Ethereum

Ethereumノード達とやりとりする場合のツール達

Frontend Ethereum APIs

FrontendはもうJsですねほっぼ。ここで紹介されているツール。

やはりFrontendはJsが相性いいみたいです。

Web3.js ですね。Web3。これは有名です。
Web3が触れればもう大丈夫なんじゃないでしょうか。
開発する人は取り急ぎWeb3触っておけばよいと思います。

Backend Ethereum APIs

Web3.py、Web3.php、Web3j など様々な対応言語がありますね。
これBackendのカテゴリわけしてるけど、Web3.pyはWeb3.jsの派生されてできたものだし
カテゴリわけの違いが自分はよくわかってないです。

Bootstrap/out of box tools

パッケージ管理とかやってくれるツールのカテゴリですかね。
Truffle boxes ができれば取り急ぎよさそうかと。
それにしても7種類あるのか。結構あるな。

Ethereum ABI (Application Binary Interface) tools

ABIはコントラクトのインタフェース情報です。JSON形式で吐き出されます。
これはABI decoderなど3種類とそこまでないです。
JSONとEVMのbinaryとを通信します。

Patterns & Best Practices

OpenZeppelinのライブラリなどはいつもお世話になってます。
ICOセールなどもライブラリ使えばすぐに作れてしまいますよね。
Dappsysなどは知りませんで、今度一通り目を通そうと思います。

Ethereumの開発する前にこの辺りのソースは一通り目を通したいですね。

Infrastructure

Ethereum Clients

Geth, Parity あたりはよく聞きますし使っている人が多いんじゃないでしょうか。
13種類も紹介されてます。結構いっぱいあるな。

ストレージ

IPFSが紹介されてるけど、Ethereumなのか・・・?
Swarm の紹介もありますね。

Messaging

Ethereumのチャット機能のようなものを実現できるMessaging。
Whisperというツールなど3種類。

こちらのWhisperのページより引用です。

メッセージのやり取りはブロックチェーン上には記録されませんが、メッセージのやり取りをしながら、送金処理や仮想通貨の売買を実施する等、工夫次第でDAppsの機能を拡張することが可能となります。
ブロックチェーン上には記録されない為、一定時間経過後にメッセージがなくなるという時限制のあるもの(※時間設定は個人で可能。)ですが、P2Pを介した非同期通信(※相手がオフライン状態でもメッセージ送信可能。)という利点を有しています。

Testing Tools

Solidity code coverage, Solidity function profilerm Espresso
など結構充実してきてる印象です。

Security Tools

セキュリティ解析を行ってくれる Mythril など11種類紹介。

モニタリング

Neufund – Smart Contract Watch
など2種類。
スマートコントラクトやトランザクションの数などをモニタリング

Smart Contract Standards & Libraries

ERCの紹介もあり、Ethereumのプロトコル紹介もあり。

ERCはERC20, 721, 165, 173, 725。

Aragon – DAO protocol
0x – DEX protocol

あたりも。

2nd Layer Infrastructure

2018年8月7日時点では不完全のようでした。
Payment/State Channels、Plasma、サイドチェーンの紹介など。

POA Networkがサイドチェーンとして紹介されてました。
POAはProof of Authorityの略ですが、あまりまだ触っていなかったので
今度触ってみようと思ってます。

まとめ

思ったよりも色々なツールがありました。
個人的にはセキュリティと監視ツールがどんなものなのか今度触ってみようかと。
あと、POAですね。
まだまだツール増えて行くと思いますが、日本からもツールでるとよいなと勝手に思ってます。

それにしてもConsenSysはこういった有益な情報を積極的にシェアしたりツール作ったりと、世界でも3本の指にはいるEthereumをわかってる集団だと改めて思いました。
ConsenSysの動きは随時チェックしていかないと。

Sponsored Link
コメントはまだありません

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


仮想通貨全般
TendermintをDocker使って起動してみる

以前、勉強会に行ってきた際にTendermintの事を聞いて ブロックチェーンプロトコルが実装できる …

仮想通貨全般
Bitcoinのdifficultyを決めるnBitsを理解する

マイニングする際の理解を深めようと思い、マイニング難易度(difficulty)を決めるnBitsに …

仮想通貨全般
EOS Night Meetupにいってきた

今回は、以前からEOSに興味があったので EOS Night Meetupにいってきました。 暗号通 …