コーディング支援が肩代わりしてくれること
コーディング支援は、開発者が毎回似たように書くコードを素早く埋め、初めて見るエラーメッセージの意味を説明し、他人が書いた見慣れないコードを一行ずつ解説してくれます。テストコードのたたき台を作る、正規表現のように覚えにくい文法を組む、コメントや説明文書を整えるといった作業でも、時間を大きく減らしてくれます。学び始めた言語で、ほかの言語の考え方をどう置き換えるかを聞くのにも向いています。ただし、支援が書いたコードの責任は最後まで、それを取り込んだ人にあります。楽になったぶん、確認する習慣も一緒に身につける必要があります。
動くコードと正しいコードは違う
人工知能が作ったコードはたいていもっともらしく見え、実際に動きもします。問題は、動くからといって要件をきちんと満たす保証はないことです。空の入力や極端に大きな値のような境界の場合を落としたり、エラーを黙って握りつぶしたり、古い版でしか使わない書き方をしたりします。存在しない関数や設定の名前を自信満々にでっち上げることもあります。だからコードを受け取ったら、公式文書で関数や設定が実在するかを確かめ、自分の環境の版でそのまま動くかを実際に試す必要があります。
セキュリティで特に気をつけること
最も危険なのは、問題なく動くのに安全ではないコードです。見た目に異常がないので、確認で見落としやすいのです。次のような部分は、別に時間を取って見てください。
- 利用者の入力を検査せず、データベースへの問い合わせや命令にそのまま入れるコード
- パスワードや接続キーをコードの中に直接書いた部分
- すでに弱いと知られている古い暗号化やハッシュの方式
- 必要以上に広いファイルやネットワークの権限
- 聞いたことのない外部パッケージを入れるよう勧める提案
でっち上げのパッケージ名に注意
人工知能は、ありそうな名前の外部パッケージをでっち上げて、インストールするよう勧めることもあります。その名前が実在しなければインストールが失敗して終わりますが、誰かがその名前を先に登録して有害なコードを仕込んでいたら、入れた瞬間に自分のパソコンやサーバーが危険にさらされます。新しいパッケージを追加するよう言われたら、公式の配布元で実在するか、継続して保守されているか、つづりが正確かを確かめてから入れましょう。チームなら、新しい依存関係を加えるときにほかの人の確認を通す決まりが役立ちます。
秘密の情報は入れない
エラーを早く直したくて、設定ファイルやログを丸ごと貼り付けることがよくありますが、その中には接続キーやパスワード、顧客データが混ざりがちです。入力した内容がどう保存され使われるかはサービスや料金プランごとに違うので、規約と設定を確認してください。会社のコードなら、外部の道具に入れてよいかという社内方針が先です。貼り付ける前に秘密の値は偽の値に置き換え、問題の再現に必要な最小限のコードだけを切り出して見せる習慣をつけましょう。誤ってキーを入れてしまったら、すぐに無効にして新しく発行するのが安全です。
ライセンスと著作権
公開されたコードにも利用条件があります。出典や著作権表示を残すよう求める条件もあれば、そのコードを使った成果物を同じ条件で公開するよう求める場合もあります。人工知能が作ったコードが、既存の公開コードとほぼ同じ形で出てくる可能性も完全には否定できません。長く独特なコードのかたまりを受け取ったら、似たコードが公開されていないか検索し、会社の製品に入れるときは社内のライセンス方針に従ってください。人工知能の生成物の権利関係は国やサービスの規約ごとに扱いが異なるため、公式の案内を確認する必要があります。
確認のしかた
コーディング支援の結果は、同僚から届いた変更だと考え、同じ基準で確認すれば十分です。
- 一行でも理解できない部分があれば、説明を聞いて納得してから取り込む
- 通常の入力と境界の入力に対するテストを書き、実際に走らせる
- 新しく加わった依存関係が実在し、保守されているか確かめる
- エラー処理と権限の範囲を別に見直す
学んでいる人なら
プログラミングを学んでいる途中なら、答えをすぐにもらって使うより、まず自分で書いてから支援のコードと比べるほうが力がつきます。行き詰まったときは、正解のコードではなくヒントや考え方だけを求めることもできます。基礎がないと、支援が間違ったコードを出しても気づけず、結局、確認という最も大事な仕事ができなくなります。課題や試験で人工知能の利用が認められているかは、授業の方針をまず確かめましょう。
🌍 検索エンジンでさらに調べる
ボタンを押すと、そのエンジンでこのキーワードを検索します