【solidity】そもそもsolidityとは

目次

solidityってどんな言語?スマートコントラクトとは?
新しくイチから学習を始めた記録


solidity_logo


1.0_solidity(ソリディティ)とは


まず、solidityとは、静的型付け言語に分類されます。
静的型付け言語とは、Typescript同様、コンパイルしたときにソースコードを解析・検証するものになります。
↓↓
静的型付け言語_Wikipedia

もっと分かりやすく噛み砕いて言うと、スマートコントラクトを記述するプログラミング言語です。
↓参考リンク
solidityのwikipedia

スマートコントラクトとは、契約の自動化です。
学習していて、非常にわかりやすい例えがありました。
それは自動販売機です。
自動販売機は、「①お金が投入される」「②ボタンが押される」と自動的にジュースやお茶が出てきます。
①、②という条件が揃った時に、契約が成立して、自動的に機械が動いて、飲み物を提供してくれます。
この一連の流れを、改ざん不可能なブロックチェーン上の台帳に記録されることで、契約の透明性が担保されます。


2.0_どんな場面で活用されるのか


スマートコントラクトとは直訳すると「賢い契約」という意味になりますので、主に契約の場面で活躍すると思います。
ただし、実生活の中で身近になるのはまだまだ先のことでしょう。

  • 不動産の売買契約
  • 保険の契約
  • ゲーム内トークン(ポイントみたいな)の売買

この辺りが相性が良いのではないでしょうか。 このスマートコントラクトの技術は、ブロックチェーンを活用したものになっているため、Web3.0の言語になります。
私が開発したいアプリケーション(dapps)も、SNSにトークン機能を持たせたようなものになるので、スマートコントラクトの実装は不可欠になります。


3.0_solidityを開発する


開発環境は、VSコードでももちろん大丈夫なのですが、solidity専用のプラウザ上のエディタであるREMIX IDEが使いやすいです。

おすすめする理由が、書いたコードが間違っていれば、エラーが表示されることや、仮想環境でデプロイして動きを確認することも可能です。
今後、このREMIX IDEを使用して開発していくので、一つ一つ丁寧にアウトプットしていきたいと思います。