ずっとデバッグ

アルバイト

デバッグ再考

もう数日もデバッグしながらコード読んでるのに、1リクエストの全貌すら把握できていない。1つのリクエストのパラメーターにインターセプターが何十個も付いてくるから、あー、これは心が折れるなぁと試行錯誤してた。

コントローラーやリソースローダー、インターセプターの処理は、親クラスから派生しているので、親クラスのメソッドにブレークポイントを設置するのではなく、目的のサブクラスからステップインしてトレースする方が効率的だと分かった。

入れ子のデータ構造の直感的な分かり難さ、Spring (もしくは Bean?) の DI コンテナによるコードの再利用性の高さゆえに幾重にもラップされた処理が冗長になっている。あとメソッドのオーバロードって、検索するとヒットしたり、順番に追っていかないといけないからコード読む上で流れが良くないね (´・ω・`)

そうこうしているうちに、Eclipse の扱いにも慣れてきた。ソースの検索とジャンプ、どのショートカットを覚えておけば良いか、エディタは右端で折り返されない、ちょっとずつ分かってきたよ。

1リクエスト全てを把握するのはまだ無理っぽいので、今日は課題チケットに対するアクションとビューの処理の部分をざっくり把握した。明日も引き続きリソースローダーとインターセプター周りの詳細を調べて、対応方法と修正箇所を検討する (ところまで行けば良いなぁ) 。

それにしても、あんなにオブジェクト作って、いっぱいインターセプターの処理をして、さらにマルチスレッドでよく動くわな、、、Java 凄いわー。

早朝レッスン

今朝、初めて早朝レッスンを受けてみた。まだ試験サービスらしいので受け付けしているインストラクターも少ない。早朝レッスンは人気もあり、予約が空いてることはあまりない。

今日は 6:00 - 6:25 でレッスンを受けた。寝起きで人と話すと頭を使うせいか、目が覚めて良いね。フィリピンは時差が1時間だから 5:30 (現地は6:30) からやってくれるようになると嬉しいなぁ。