2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

あなたは正体不明のコードをどうデバッグする?

1 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2023/11/22(水) 20:37:10.56 ID:wBv1xBYL.net
ステップ実行できる環境整えてmethodにブレークポイント置いてコツコツステップ実行で進めて行く

3 :デフォルトの名無しさん:2023/11/23(木) 10:00:34.36 ID:mHKDjsht.net
>正体不明のコード

正体不明の実行ファイルのデバッグなら意味あるけど
コードがあるならソース観れば良いじゃん

4 :デフォルトの名無しさん:2023/11/24(金) 12:14:46.65 ID:+98g87Md.net
>>1
・3: `obj`を生成したクラスは誰が作成したクラスかを調べる。

これが最初だろ
なんで3番目なんだよw
運が良ければ隣にいる奴かもしれないんだぞ

5 :デフォルトの名無しさん:2023/11/26(日) 10:44:36.42 ID:ZO1Qg+Pp.net
>正体不明のコード

まず実行しないんだが

6 :デフォルトの名無しさん:2023/11/27(月) 10:01:37.22 ID:7/k6/GSg.net
何の言語かによってアドヴァイスも変わるんじゃね

7 :デフォルトの名無しさん:2023/12/01(金) 14:40:18.47 ID:a1+BJMvt.net
仕様書も無いなら何が正解かも分からないだろうに

3 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★