雑に実装するのが苦手
ここ最近、久々にたくさんコードを書いているのだけどそんなことを思った。
雑に設計するのは苦では無いのだけれど、雑に実装するのが苦手かもしれない。
設計していざ書き出すと、ん?これはこうしたほうがいい感じなのでは?となっていき、クラスの量が膨れだす。特にinterfaceが増える。別に悪いことではないとは思うのだけど、初手で抽象度の高い実装が出来がち。これ、たぶんというか絶対この状態のものがいきなりレビューに投げられたらレビュワーは辛いと思う。設計を共有していればいいのだろうけど、自分はまず手書きで設計するクセがあるのでそれをドキュメントに起こすのがダルい。ダルすぎるのである。なので、レビューに出すときに補足はしているが、いかんせんそういったものを出すときは大体がボトムアップで部品を出していく感じだから全体像が見えないのでなおさら辛いと思う。(一気に完成形をドカーンと出されるのも辛いと思われる)
既存の実装をなぞって作るときは、そうでもない。既存の実装に敬意をはらって?作るから。ちなみに既存の実装をなぞって作るのは正直好きではない。
先に書いたようになってしまうのは、新しく考えて作らなくてはいけないもの、かつ、処理がけっこう複雑だったりするものが該当する。そういったものを書くときに雑に実装するのが苦手。かといって、いいものが出来ているのか?と言われるとそうでもないと思う。なんか自己満の強いコードを書いているだけのような気がする。
雑にまずはべたに書いていってもいいのだろうけど、そこから境界線を見つけたりだとか、いい抽象度に落とし込むだとか、モデリングだとか、オブジェクト同士をどうやって会話させるだとか、そこの設計を改めて考える際のみんなで考えるときのコミュニケーションコストがどうしても引っかかってしまう。
まずは動くものをというのも分かる。が、今から作るものはどう考えてもべたに書いたらものすごいことになるというのもおぼろげながら分かったりもする。雑に作っても問題なさそうなところとか、雑に作るとまずそうなところとかをほのかに感じることができるみたいな。そんなお年頃である。
そういったものを実装するときに、最初から、このときはきっとこうだからこういう風にやったほうが良さそうみたいな感じで自分ひとりと会話しながらバーっと作ってしまうクセがあるのだと思う。
そして、それは良くないなと思っている。今までの書きっぷりからして、めちゃくちゃコード書けるやつみたいな雰囲気を出しているがそうでもない。そうでもないんだ。なので自分の赴くままに書いたものが良いとは限らないというか、大体よろしくないものが出来上がっていると思う。よろしくないんだが、なんとなく動きそうだからおkみたいなケースが多いのではないか?と思っている。
雑に相談するのが苦手
つまり改善していかなくてはいけない。改善していかなくてはいけないのだが、自分は相談することが下手くそというか、単純に相談するということが苦手なのではないか?という結論にこれを書きながら行き着いた。この問題ぶっちゃけずっと抱えている。悩みを抱えるとある程度の答えが出るまで自分で考えてしまうクセがある。んー、それは良くもあり悪くもありだとは思うんだけども、悪い方向に向かってしまうことのほうが多い気がするのでうまくコントロールしていきたいなーと思う。
つまりどうするの
なんだかよくわからない感じになってしまったのだけど、雑に相談していく というのをやっていったほうが良さそうな気がするので、すこしずつやっていけるようにしていきたい。