コードをレビューするとき、私は通常、問題を解決する方法について特定の推奨事項を作成しようとします。しかし、レビューに費やすことができる時間が限られているため、これは必ずしもうまく機能するとは限りません。これらの場合、開発者が自分で解決策を考え出した方が効率的です。
今日、私はいくつかのコードをレビューし、クラスが明らかにうまく設計されていないことを発見しました。特定のオブジェクトにのみ割り当てられ、他のオブジェクトには空白のままになっているオプションの属性がいくつかありました。これを解決する標準的な方法は、クラスを分割して継承を使用することです。しかし、この特定のケースでは、このソリューションは物事を過度に複雑にしているように見えました。私は自分でこのソフトウェアの開発に関わっていなかったため、すべてのモジュールに精通していません。したがって、特定の決定を下すのに十分な知識があるとは感じませんでした。
私が何度も経験した別の典型的なケースは、明らかに意味のない、または誤解を招くような関数、クラス、または変数名を見つけたが、自分で良い名前を思い付くことができないことです。
それで、一般的に、レビュアーとして、「このコードには欠陥があるので...違う方法でやる」と言ってもいいですか、それとも特定の解決策を考え出す必要がありますか?