もはやどこまでが methodでどこからがcomputedなのかも判断できなかった。
VuexのModuleも5000Stepを超えていた。管理しているstateの数は100近かった。
もちろんTypeScriptなどという高尚なものを使っているわけもなく。コメントからなんとなくObjectの型を推測してデバッグするしかなかった。
テストなんてあるわけない
chromeのデバッグツールだけが頼りだ。Vueのデバック用の拡張機能は重すぎて動かなかった。
非同期処理のハンドリングも雑だった。
async関数の中で平気でコールバック関数を呼んでたりするし、
awaitがついていないことも多々あった。
アプリの挙動が安定しないのは明らかに雑な非同期処理のせいだったが、コードが巨大すぎて原因を突き止めるには至らなかった。
処理の途中でObjectの型が変わることもしょっちゅうだった。
さすがJavaScriptだ。必要になったら必要になった分だけいくらでもプロパティを追加できる。
でもごめんなさい。追加してくれたのはありがたいけど、僕には今目の前にあるObjectに何が入っているのかもはやわからないんだ。
君が好意で追加してくれたプロパティを、僕は活かすことができない。
このコードとにらめっこを始めてから3日間、全く進捗はなかった。
でもどうやって書けばよいのだろう。正解がわからないんじゃテストの書きようがないじゃないか
週末には、上司に何かしらの報告を入れなければいけない。
「あまりにも難解すぎて私には無理です」
と。
でもたった3日で諦めてしまってよいのだろうか?
もしかしたら、これはものすごい成長のチャンスなのかもしれない
僕が世間知らずなだけで、世の中にはこんなコードがいっぱいあって、みんなこの試練をくぐり抜けて一人前になっているのかもしれない。
たかだか4Kステップごときでガタガタ言うなと言われてしまうかもしれない。
この程度でさじを投げていたら、なんの仕事もできないのかも・・・
もしかしたら親切な増田たちが、あっと驚く素敵な解決方法を見つけてくれるかもしれない。
2019/5/22 記