ブログ
名前を知らなくてもコードを探す: セマンティック検索
大きな組み込みプロジェクトで、関数名ではなく役割や意図からコードを探す考え方。
RS
Rishabh Sinha
Embedr
コードを探すとき、関数名や変数名を覚えていればgrepで十分です。でも実際には「WiFi再接続の処理はどこだっけ」「センサー初期化はどのファイルだっけ」のように、名前ではなく概念で探したいことがあります。
テキスト検索の限界
reconnectWifiという名前なら検索できます。しかし実装がensureNetworkやconnectToApという名前なら、思いつかないかもしれません。
セマンティック検索
セマンティック検索は、言葉の意味や役割で関連コードを探します。完全な魔法ではありませんが、大きなプロジェクトの入口を見つけるには便利です。
組み込みでの使いどころ
- センサー読み取りの流れを探す
- 通信再接続処理を探す
- エラー処理やリトライを探す
- 初期化順序を理解する
エージェントと組み合わせる
検索結果をエージェントに渡すと、「この周辺を読んで、変更すべき最小箇所を教えて」のような依頼がしやすくなります。
