エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
#111 OOPで状態を持ち回る « Python « a wandering wolf
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
#111 OOPで状態を持ち回る « Python « a wandering wolf
副作用は極力排除したいというのは、副作用がきっかけのバグを作らないためにも大事です。 ですが、すべ... 副作用は極力排除したいというのは、副作用がきっかけのバグを作らないためにも大事です。 ですが、すべての副作用を排除することはとても難しい。 関数型言語であるHaskellなんかは、モナドを使って副作用をある手続きの中に閉じ込めることで対処していたりします。 一方、オブジェクト指向プログラミング言語では、副作用を前提としている操作も多いですよね。 いろんなメリット・デメリットがあると思いますが、オブジェクトの状態を変えながら操作を行うというのは良くあるやり方かと思います。 状態、と言って真っ先に思いつくのはStateモナドですよね?(そんなことはない) State モナド - All About Monad State Monad - HaskellWiki 今回は、上に上げた2番目のリンク先にあるコードを、Pythonを使って表現してみようと思います。モナドらないと言っても、今回Pytho