寄付窓口はこちら

より良いDApp開発をするための話とgethoについて #hicon2018 A-7

hicon2018.sched.com

f:id:niwatako:20181110164513j:plain

f:id:niwatako:20181110164528j:plain

PopshootでCTOしています。

f:id:niwatako:20181110164543j:plain

創業3年モバイルアプリ開発主。

最近ウォレットや仮想通貨関連アプリを開発。そして今日紹介するgethoを開発。

本日リリースしました

f:id:niwatako:20181110164621j:plain

Gethoに関しては後ほど紹介させていただきます。

f:id:niwatako:20181110164647j:plain

みんさんDapp開発されていると思いますが、問題点があると思います。その問題点の話とgethoについて。

f:id:niwatako:20181110164717j:plain

ご存知と思いますがDappとは

f:id:niwatako:20181110164726j:plain

ユーザーが操作可能なアプリケーションの構成図の例

f:id:niwatako:20181110164749j:plain

ユーザー側でトランザクションを投げたらブロックチェーンネットワークで実行される。

今日はこのようなDapp開発ということでお話します。

Dapp開発はスマートコントラクト開発とクライアントアプリ開発

f:id:niwatako:20181110164851j:plain

f:id:niwatako:20181110164847j:plain

プライベートで開発して、テストネットに公開して世界でテストして、本番にデプロイ。

プライベートネットでの開発がDapp開発において一番長くかかると思うのでここをより良くするのが大事と考えている。

f:id:niwatako:20181110164933j:plain

コントラクト、クライアント、サーバーサイドの開発者がいると思います。

ブロックチェーンネットワークをより良くすることはDapp開発で重要。

f:id:niwatako:20181110165024j:plain

f:id:niwatako:20181110165026j:plain

開発が容易、手間がかからない、安定・持続性

開発が容易であること

f:id:niwatako:20181110165049j:plain

PoWだと時間がかかるのでPoAで開発してPoWにすることも考えられるだろう。

デフォルトアカウントにETHがある都会的に開発できる

手間がかからない

f:id:niwatako:20181110165215j:plain

安定・持続性

f:id:niwatako:20181110165234j:plain

溜まったトランザクションデータが消えるとDBと整合性が取れなくなったりするのでchaindataが残ることは結構重要かと思います。

f:id:niwatako:20181110165333j:plain

f:id:niwatako:20181110165334j:plain

INFURAを使うことがあるかと思います。INFURAを使うと本番環境とAPIが変わらないのと、ノード不要です

f:id:niwatako:20181110165416j:plain

先日Ropstenネットワークが止まったと思うが、パブリックテストネットなので攻撃にさらされるリスクが有る

f:id:niwatako:20181110165449j:plain

ローカルブロックチェーンを立ち上げるパターンもあると思うが、クライアント開発者やサーバーサイド開発者がアクセスするのが難しい

f:id:niwatako:20181110165518j:plain

f:id:niwatako:20181110165545j:plain

クラウドにプライベートでGeth, Parityを立ち上げるパターン

f:id:niwatako:20181110165612j:plain

f:id:niwatako:20181110165629j:plain

開発に適したネットワークが無いんじゃないか

f:id:niwatako:20181110165724j:plain


2つ目の話、コントラクトの実行

f:id:niwatako:20181110165745j:plain

f:id:niwatako:20181110165806j:plain

f:id:niwatako:20181110165825j:plain

マイグレートしてコンソールに入ってインスタンスを作って叩くという工程を踏む

f:id:niwatako:20181110165847j:plain

f:id:niwatako:20181110165920j:plain

Remix

f:id:niwatako:20181110165940j:plain

f:id:niwatako:20181110170007j:plain

f:id:niwatako:20181110170017j:plain

それぞれ開発時における良いブロックチェーンネットワークなのか?スマートコントラクト実行簡単にできたら良いよねという話をしました。

最後に getho

f:id:niwatako:20181110170044j:plain

これは使っているツールでgethというのを使っているのと、日本のプロダクト感を出したかった。解決することは、

f:id:niwatako:20181110170109j:plain

f:id:niwatako:20181110170145j:plain

簡単にアクセスできてノードの自由度が高い、手間いらずで無料から使える、データを永続化できて運用不要。

f:id:niwatako:20181110170224j:plain

f:id:niwatako:20181110170353j:plain

f:id:niwatako:20181110170357j:plain

ダッシュボード

f:id:niwatako:20181110170415j:plain

f:id:niwatako:20181110170435j:plain

f:id:niwatako:20181110170440j:plain

左から実際にトランザクションを発行したり参照したりできる。右にログが出る。ログは一つ一つ詳細を見ることができる。

CLIOSSで提供

f:id:niwatako:20181110170532j:plain

f:id:niwatako:20181110170555j:plain

有料機能、ご要望どおりの対応、サポートをしたいと思っています

f:id:niwatako:20181110170643j:plain

6時間でノードは止まるが、無停止にしたりできる。

f:id:niwatako:20181110170741j:plain

f:id:niwatako:20181110170744j:plain

良い開発ツールを作ればいいDappが生まれる

f:id:niwatako:20181110170800j:plain

f:id:niwatako:20181110170810j:plain

f:id:niwatako:20181110170829j:plain

f:id:niwatako:20181110170839j:plain

f:id:niwatako:20181110170844j:plain

f:id:niwatako:20181110170855j:plain

f:id:niwatako:20181110170932j:plain