contentPythonでファーストクラスコレクションを生成するPythonオブジェクト指向ファーストクラスコレクションはじめにオブジェクト指向を勉強していると、よく「同じ型の複数のオブジェクトを扱うロジックはファーストクラスコレクションにまとめる」というような文章を目にするかと思います。自分なりに「こう書けばすっきり分かりやすくなりそうだ」という記述ができたので記事にしました。書いてみる商品クラスとそのファーストクラスコレクション(以下コレクションと記載する)を考えてみます。要素を追加する際は新しいオブジェクトを生成して返します。[item])dataclassesの基本的な使い方はこちらも読んでいただければと・・・(https://qiita.com/madogiwa_429/items/55c78fc6be7887a28df8)とりあえず、これでファーストクラスコレクションが作れます。「簡単に書けるはずの処理の記述が面倒になる」というのがありました。今回の例で、「コレクションに格納されている商品の合計金額を求めたい」というとき、どのように書けばいいでしょう。int型でリストに入れていればsum関数で書けるものが、Itemクラスを格納したことで簡潔に記述できなくなってしまいます。いうこともあり、配列を扱う場合に本当にオブジェクト指向で書くのが良いのか分からずにいました。map関数を使うこの疑念に一定の解を与えてくれるのがmap関数です。map関数はリストなどのイテラブルオブジェクトの各要素に対して処理を行ってくれます。map関数を使うと、コレクションに格納されている商品の合計金額を求めるメソッドは以下のように書けます。まとめmap関数を使うことで、ファーストクラスコレクションのメソッドを簡潔に書けました。Pythonでオブジェクト指向を書くときに同じ悩みを持っている方の参考になれば幸いです。upLoginユーザーは見つかりませんでした。