- 1 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 20:12:48.61 ID:K1koM1zT.net]
- 正体不明のコードをどうデバッグする?
obj.method(arg); →ここでエラーが発生。 以下の調べ方の優先順序、調べる必要性の要不要を考えてください。 <前提条件> ・上記のコードの全てが自分にとって正体不明。 ・`obj` を生成したクラスは正体不明。 ライブラリのクラスなのかプロジェクト内の開発メンバーが作成したクラスなのかも不明。 何をするためのオブジェクト,メソッドなのかも不明。 ・`obj.method`を呼び出した場所のコードも正体不明。ライブラリ内なのか開発メンバーが作成したクラスなのかも不明。 メソッドの呼び出し側が何をするための箇所なのか不明。 <調べ方> ・1: 発生したエラーメッセージでググる →期待する事: 上手く情報が見つかればすぐにエラーが解決できるかもしれない。 ・2: `arg`の引数をログ出力して確認 →期待する事: エラーは引数が原因している可能性があるかもしれない。 問題解決の情報として重要と思われる。 ・3: `obj`を生成したクラスは誰が作成したクラスかを調べる。 ・4: `obj`を生成したクラスが何をするためのものなのか調べる。 →3の結果次第で一般作成ライブラリであるならばググる事ができる。
- 2 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 20:37:10.56 ID:wBv1xBYL.net]
- ステップ実行できる環境整えてmethodにブレークポイント置いてコツコツステップ実行で進めて行く
- 3 名前:デフォルトの名無しさん [2023/11/23(木) 10:00:34.36 ID:mHKDjsht.net]
- >正体不明のコード
正体不明の実行ファイルのデバッグなら意味あるけど コードがあるならソース観れば良いじゃん
- 4 名前:デフォルトの名無しさん mailto:sage [2023/11/24(金) 12:14:46.65 ID:+98g87Md.net]
- >>1
・3: `obj`を生成したクラスは誰が作成したクラスかを調べる。 これが最初だろ なんで3番目なんだよw 運が良ければ隣にいる奴かもしれないんだぞ
- 5 名前:デフォルトの名無しさん mailto:sage [2023/11/26(日) 10:44:36.42 ID:ZO1Qg+Pp.net]
- >正体不明のコード
まず実行しないんだが
- 6 名前:デフォルトの名無しさん mailto:sage [2023/11/27(月) 10:01:37.22 ID:7/k6/GSg.net]
- 何の言語かによってアドヴァイスも変わるんじゃね
- 7 名前:デフォルトの名無しさん [2023/12/01(金) 14:40:18.47 ID:a1+BJMvt.net]
- 仕様書も無いなら何が正解かも分からないだろうに
|

|