【Solidity】第1章第8回:コメント文とコードの可読性向上

本記事では、Solidityにおけるコメント文の使い方と、コードの可読性を向上させるためのテクニックについて解説します。初心者にもわかりやすいスマートコントラクトを書くための基本を学びましょう。
0. 記事の概要
この記事を読むメリット
- コメント文の使い方を理解:コードの目的や動作を明確に説明できるようになります。
- チーム開発でのスムーズな協力:可読性の高いコードは、他の開発者と協力しやすくなります。
- エラーの防止:分かりやすいコードを書くことで、将来的なエラーを未然に防げます。
この記事で学べること
- Solidityにおけるコメント文の種類と使い方
- コードの可読性を向上させるためのベストプラクティス
- 可読性を損なうコードの例と改善方法
1. コメント文の種類と使い方

1.1 シングルラインコメント
シングルラインコメントは、コードの行末に追加する短いコメントに使用します。
// この行はシングルラインコメントです
uint256 public count = 0; // カウンターを初期化
動作解説
シングルラインコメントは、コードの意図や動作を簡潔に説明するのに適しています。
1.2 マルチラインコメント
マルチラインコメントは、複数行にわたる詳細な説明を書く際に使用します。
/*
このコントラクトは、基本的なカウンター機能を実装します。
関数を呼び出すことでカウントを増加させることができます。
*/
contract Counter {
uint256 public count;
}
動作解説
マルチラインコメントは、コード全体の説明や、重要なセクションの詳細を説明するのに役立ちます。
2. 可読性を向上させるベストプラクティス
2.1 コードのインデントを整える
インデントを整えることで、コードの構造が分かりやすくなります。以下は例です:
// 正しいインデント
function increment() public {
count += 1;
}
// 不適切なインデント
function increment()public{
count+=1;
}
2.2 意味のある変数名を使う

変数名には、その役割を明確に示す名前を使用しましょう。
// 意味のある変数名
uint256 public userBalance;
// 意味のない変数名
uint256 public x;
2.3 コメントとコードのバランスを取る
必要以上に多くのコメントを記述すると、コードが読みにくくなることがあります。以下は適切なコメント例です:
// 良い例
// ユーザーの残高を増加させる
function addBalance(uint256 amount) public {
userBalance += amount;
}
// 悪い例
// この関数は、ユーザーの残高を増加させます。
// 入力としてamountを受け取り、
// userBalanceに加算します。
function addBalance(uint256 amount) public {
userBalance += amount;
}
3. よくある問題と改善例

3.1 冗長なコメント
コメントが冗長すぎると、コードの可読性が低下します。以下は改善例です:
// 悪い例
// この変数は、ユーザーの残高を格納します。
uint256 public userBalance;
// 良い例
// ユーザー残高
uint256 public userBalance;
3.2 コメントの不足
複雑なロジックには、適切なコメントを追加しましょう。
// 悪い例
function calculate(uint256 a, uint256 b) public pure returns (uint256) {
return a + b;
}
// 良い例
// 2つの入力値を加算して結果を返す
function calculate(uint256 a, uint256 b) public pure returns (uint256) {
return a + b;
}
4. 練習問題
以下の課題に挑戦してみましょう:
- シングルラインコメントを使って、簡単な関数の目的を説明してください。
- マルチラインコメントを使って、コントラクト全体の機能を説明してください。
- インデントが適切でないコードを修正し、可読性を向上させてください。
5. まとめ
本記事では、Solidityにおけるコメント文の使い方と、コードの可読性向上の方法について学びました。これらのスキルを活用することで、より分かりやすく効率的なスマートコントラクトを作成できるようになります。次回は、Ethereum Virtual Machine(EVM)について詳しく解説します。