広告

第5話:コードの心臓部!「関数」を定義してコントラクトを操作可能にする

第5話:コードの心臓部!「関数」を定義してコントラクトを操作可能にする

概要

静的なデータ置き場だったコントラクトを、動的なアプリケーションに進化させる「関数」の作り方を解説します。関数の基本構造にはじまり、引数(入力)、戻り値(出力)、可視性(public/private)、そしてガス代を左右する状態可変性(view)まで、その全要素を分解。

カウンター契約の実装を通じ、状態を読み取る関数と書き換える関数を実際に作り、DAppの核心ロジックを構築するスキルを身につけます

目次
Solidity学習講座:最終版 目次(全20話)
Solidity学習講座:最終版 目次(全20話)

基礎編 第1話:未来のインターネットへようこそ!Solidityとスマートコントラクトの全体像 第2話:準備は1分!ブラウザだけで開発できる「Remix IDE」の基本操作 第3話:記念すべき初コント ...

続きを見る

はじめに

第4話までで、あなたはスマートコントラクトの「記憶」の部分、すなわち状態変数をマスターしました。uintで数を、stringで文字を、そしてaddressで参加者を定義する方法を学び、契約の骨格を設計するスキルを身につけましたね。

しかし、今のあなたのコントラクトは、まだ「ただのデータ置き場」です。一度デプロイしたら、そのデータを後から変更したり、計算したり、何かの操作を加えたりすることはできません。これではアプリケーションとは呼べません。

では、どうすれば良いのでしょうか?

その答えが、今回学ぶ**「関数(function)」です。関数とは、コントラクトに「動き」や「振る舞い」を与えるための、まさにコードの心臓部**です。状態変数が契約の「名詞」だとすれば、関数はその「動詞」にあたります。

この記事を読み終える頃、あなたはコントラクトのデータを自在に読み書きするための「関数」を定義できるようになり、あなたのプログラムは、静的なデータ置き場から、動的でインタラクティブなアプリケーションへと進化を遂げるでしょう。

-Solidity