はじめに
クラスだけではなく、構造体やタプル、Enumなどのデータの扱い方法を知ることで、より効率的なコードを書けることにつながります。本記事ではそれぞれの使いどころを紹介します。
クラス
特徴
- 参照型
- 複雑なデータ構造や状態の管理に適している
- 継承やポリモーフィズム
- メソッドやプロパティを持ち、初期化処理(コンストラクタ)が可能
使いどころ
- オブジェクト指向設計に基づいたモデルを作成する場合
- 例えば、 ユーザー情報、商品のデータ、自動車の振る舞い を表現する場合
構造体
特徴
- 値型
- 軽量なデータ構造を表現するのに向いている
- メソッドを持つこともできる
- 継承はできないが、インターフェースは実装可能
使いどころ
- データのサイズが小さく、複雑な操作が不要な場合
- 例えば、座標(Point)、サイズ(Size)、色(Color) を表現する場合
タプル
特徴
- 複数の値を簡単にまとめて扱えるので、一時的なデータの受け渡しに使える
- 名前付きタプルを使用すると、データの意味が分かりやすくなる
- メソッドやロジックを持てない
使いどころ
- 関数から複数の値を返したい場合や、一時的に関連するデータをまとめたい場合
- 例えば、 計算結果やDBから取得 した簡易データを返す場合に利用します。
Enum
特徴
- 列挙可能な値の集合を定義
- 限定された選択肢(設定値や状態)を表現するのに便利
- 値にはデフォルトで整数が割り当てられるが、任意の値を設定可能
使いどころ
- 特定の選択肢や状態を表現したい場合
- 例えば、 方向(北・南・東・西)や曜日、ユーザーの権限レベル を表現する場合に利用します
おわりに
クラス、構造体、タプル、Enumのいずれもデータを表現するために重要です。
それぞれの特徴を理解し、用途に応じて使い分けることで、効率的で分かりやすいコードを書くことができます。
あなたの使い方に合った選択をしてください!