この記事は、【 可茂IT塾 Advent Calendar 2024 】の4日目の記事です。
Dartには、クラスのインスタンスを関数のように扱えるcall関数というものがあります。call関数を使うことで、コードの簡潔性や可読性を向上させることができます。call関数の使用方法、メリットを紹介します。
使用方法
まず、基本構文は下のようになります。
class クラス名 {
戻り値の型 call(引数) {
// 関数の内容
}
}
例は下のようになります。
class Greeter {
String call(String name) {
return 'Hello, $name!';
}
}
void main() {
final greeter = Greeter();
print(greeter('gurasan0110')); // Hello, gurasan0110!
}
このように、インスタンスを関数のように呼び出すとcall関数が実行されます。
メリット
- 簡潔なコード
- クラスをインスタンス化した後、関数のように直接使えるためコードがシンプルになる
- 可読性の向上
- インスタンスの意図的な動作が直感的に理解しやすくなる
- 柔軟性
- ロジックをカプセル化しつつ、関数のようなインターフェースを提供できる
まとめ
Dartのcall関数を使うと、クラスのインスタンスを関数のように扱うことができ、コードの簡潔性や可読性を向上させることができます。様々な場面で活用できる柔軟な機能なので皆さんも使ってみてください!