オブジェクト指向って、カードゲームに似ている。

 オブジェクト指向は、子どものころよくやっていたカードゲームにているなぁと思うのです。

 たとえば、1枚1枚のカードって、カプセル化されていているメソッドみたい。カードの効果がほかのカードの効果を変えたりしないけど、場やマナに与える影響・効果が組み合わさって、コンボになる。

 コンボとは、1枚1枚、非力にみえるカードを組み合わせてより強力な流れをつくること。これは、オブジェクト指向でいうクラスであり、有名なコンボは、デザインパターン。僕の中で、オブジェクト指向は、そういう理解。

 プログラミングするとき、メソッドをカードゲームの1枚のカードだなって思いはじめたら、なんとなく、気が楽になったというか、指針ができて、迷いが減ったというか。

 カードゲームやってたころ、そういえば、よく自分でカードゲームを設計してみたいなぁと思っていたけれど、ちょっと夢がかなっているのかもなぁって、思った。