The Daily WTF 日本語
フォロー
代表的な路線:もう一つのパラメーター、ブロ
マットはフォームに新しいフィールドを追加する必要がありましたが、データベースに変更を保存する方法が複雑だったため、作業は困難になりました。 saveQualif メソッドには 36 個の文字列型パラメーターがあり、作業が困難になっていました。このメソッドは同数のパラメーターを持つデータアクセスオブジェクトを作成し、それらが null でなければデータベースのフィールドを更新します。パラメーターには、プレーンテキストで保存されていた pdfPassword などの機密情報が含まれていました。このメソッドは、すべてのパラメーターが埋められた状態で 1 回、ほとんどのパラメーターが null に設定された状態で 1 回の、合計 2 回呼び出されました。マットはこのメソッドをより良くするためにリファクタリングしようとしましたが、何かを壊すことを心配し、代わりに別のパラメーターを追加することにしました。このアプローチは、メソッドのリファクタリングを回避した以前の開発者によって取られています。その結果、複雑で保守が難しいコードベースができてしまいました。リファクタリングは後回しになることが多く、将来の開発者が対処することになります。このアプローチは、エラーやセキュリティの脆弱性などの問題を後々引き起こす可能性があります。