[Ontology]Blockchainとは？みたいな人でも30分でできる！オリジナル自作通貨の作り方

#Ontologyとは

Ontology is a new high-performance public blockchain project & a distributed trust collaboration platform.

つまり、中国発のイケイケなブロックチェーンです。
　
詳しくはWebサイト参照。

https://ont.io/

筆者がEthereumはちょっと触ったことがあるので、Ethereumと比較しています。

Ethereum開発したことある人は、あーなるほどとなるはず。

#ツール

##CyanoWallet

クローム拡張で使えるOntologyのWallet.

EthereumでいうところのMetamask.

https://chrome.google.com/webstore/detail/cyano-wallet/dkdedlpgdmmkkfjabffeganieamfklkm

##Owallet

OntologyWalletのデスクトップアプリ

https://github.com/ontio/OWallet/releases

#開発ツール

##SmartX

Ontologyのスマートコントラクト開発のブラウザで動くIDE.Etherumでいうところの[Remix](https://remix.ethereum.org/)

https://smartx.ont.io/#/

##Punica

Ontology用の開発フレームワーク。Ethereumでいうところの[Truffle](https://truffleframework.com/truffle)。

https://punica.ont.io/docs/punica/

サンプルアプリケーション

https://punica.ont.io/docs/punicaBox/

紹介記事

https://medium.com/ontologynetwork/introducing-punica-suite-ontologys-dapp-development-framework-ab993783a6c9

##Solo Chain

テストネットワークを動かせるツール。Ethereumでいうところの[Ganache](https://truffleframework.com/ganache)。

https://punica.ont.io/docs/soloChain/

#開発スタート

##開発用にテストネットのONTをクレクレする

CyanoWalletをダウンロードしてアカウントを作成

<img width="354" alt="スクリーンショット 2018-11-24 15.20.25.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/b096f757-7841-bf9b-3ec8-a1d881434636.png">

アカウント作ったら、以下をブラウザで叩くとテスト用のONTが手に入ります。

http://13.78.112.191:8080/tokenapply/<your address>

1000GET

<img width="349" alt="スクリーンショット 2018-11-24 15.29.25.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/0025b7cb-acb1-3600-57b6-7746bbf56c7c.png">

##コントラクト開発

SmartXで開発していきます

https://smartx.ont.io

<img width="1678" alt="スクリーンショット 2018-11-24 16.06.37.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/af3de5e1-f3c7-68d3-137f-d39c068f156c.png">



Create Projectでプロジェクト作成

<img width="1677" alt="スクリーンショット 2018-11-24 16.07.15.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/a13e5468-2e16-96fa-eae4-2a8d37322bb4.png">

Pythonで書くのが本流らしいので、Pythonを選択

<img width="1680" alt="スクリーンショット 2018-11-24 16.07.23.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/adbbf9a7-901a-1c3b-b637-9907ddae1f3d.png">

今回はOEP-４というトークン設計で、TommyCoinを創ります。
OEP-４はEthreumでいうところのERC20みたいな設計です。

<img width="1680" alt="スクリーンショット 2018-11-24 16.10.38.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/1b48d9e3-d9c1-5c0a-5d88-deed37c9d3d4.png">

ここからサンプルコードをコピーしてきましょう。

https://github.com/tonyclarking/python-template/blob/master/OEP4Sample/OEP4Sample.py

トークンの名前とシンボルを変えて、送信先を自分のウォレットのアドレスにします。

<img width="1680" alt="スクリーンショット 2018-11-24 16.27.17.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/b695057f-1918-6fc8-bd85-588bdae56f7f.png">

無事にコンパイルが通ったら、デプロイしてinitをRunします。

<img width="1680" alt="スクリーンショット 2018-11-24 16.29.37.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/65c88923-ff03-c5f5-b7ef-5a6ab7158eef.png">

CyanoWalletでSettingsからOEP-４Tokenを選んで紐づけます。

<img width="351" alt="スクリーンショット 2018-11-24 16.32.01.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/a264a34c-b9a5-3dd3-da52-71c972577630.png">

<img width="350" alt="スクリーンショット 2018-11-24 16.32.08.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/6b34a30e-70d1-a394-a21d-3cf471a40193.png">

SmartXで出てきたコントラクトハッシュを入力すると

<img width="349" alt="スクリーンショット 2018-11-24 16.32.31.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/366d8ad3-ffab-87e9-943c-fd8ae03d58b4.png">

TommyCoinが確認できました！

<img width="354" alt="スクリーンショット 2018-11-24 16.32.54.png" src="https://qiita-image-store.s3.amazonaws.com/0/77198/1c370594-c010-0978-ba9e-9a98673d27d7.png">

#最後に

ONTくれるパトロンの方いたらぜひお願いします。
WALLET OF TMY:　AeTXrhPjFZxBEuSuygxH5DwsKTKxmtd7AD