「動いたからOK」——未経験のうちはこれで正解です。でも半分だけ。

AIにコードを書いてもらって、実行したらちゃんと動いた。この瞬間、大抵の人は「完成した」と思います。実際、動くところまでたどり着けたのは立派なことです。ただ、そのままGitHubにpushしたり、MENTAの課題として提出したりする前に、もう一段だけ見てほしい場所があります。

うちの現場でも、AIが書いたコードをそのままマージすることはまずありません。動作確認は最低ラインであって、確認作業のゴールではないからです。この記事では、私が実際にAI生成コードを受け取ったときに見ている観点を、初心者でも判断できるレベルまで具体化して紹介します。

「動く」と「安全に動く」は別の話

AIは指示された処理を実現するコードを高い精度で書いてくれます。ただし「言われたことをやる」のと「言われていない事態が起きても壊れない」のは別の能力です。たとえば入力フォームの処理なら、正常な入力に対しては完璧に動くコードでも、想定外の入力(空欄、異常に長い文字列、変な記号)が来たときにどう振る舞うかまではAIも読み切れていないことがあります。

これは能力不足というより、AIが「動くコード」を最優先で提示する性質を持っているためです。だからこそ、受け取る側の人間が「これは動いたコードであって、確認済みのコードではない」という前提で見る癖をつけておくと安心です。

実際に見ている3つ+αのポイント

私が実測している感覚だと、だいたい1〜2分あれば、以下の3点だけはひと通りチェックできます。すべてを完璧に理解する必要はなく、「該当箇所があるかないか」を探すだけで十分です。

① ハードコードされた値がないか

APIキー、パスワード、固定のファイルパスなどが、コードの中に直接書き込まれていないかを確認します。

  • 危ないパターン: const apiKey = "sk-xxxxxxxx" のように文字列がそのまま埋め込まれている
  • 見るべき箇所: 「キー」「パスワード」「token」「secret」といった単語で検索して、直書きの値が出てこないか

これはGitHubに公開した瞬間に誰でも見られる情報になるので、未経験のうちに一番痛い目を見やすいポイントでもあります。

② エラー処理が本当にあるか

「正常に動いたときの処理」だけが書かれていて、「うまくいかなかったときの処理」が抜けていないかを確認します。

  • 危ないパターン: データ取得処理があるのに、取得に失敗したときの分岐が一切ない
  • 見るべき箇所: trycatch、もしくは「失敗したら」という条件分岐がコード内にあるかどうか

エラー処理が無いコードは、開発中の自分の環境ではたまたま動いていても、他の人の環境や通信が不安定なときに突然落ちます。

③ 変な所で無限ループ・無駄な繰り返しがないか

同じ処理を必要以上に何度も呼び出していたり、終了条件が曖昧なループがないかを確認します。

  • 危ないパターン: 同じデータを取得する処理が、画面が更新されるたびに毎回呼ばれている
  • 見るべき箇所: 「これ、何回実行される処理だっけ?」と自分に問いかけて、想定より多く動いていそうな箇所を探す

これは動作確認だけでは気づきにくく、公開後にアクセスが増えてから「重い」「固まる」という形で表面化しがちな落とし穴です。

④ セキュリティ的にまずい直書きがないか

パスワードなどの重要な情報が暗号化されずそのまま保存されていたり、外部からの入力がそのままデータベースへの命令文に組み込まれていたりしないかを確認します。

  • 危ないパターン: 入力された文字列をそのままデータベースの命令に差し込んでいる
  • 見るべき箇所: 「ユーザーが入力した値が、そのまま別の処理にコピペされていないか」

①〜③に比べると少し難易度は上がりますが、「入力された値がそのまま次の処理に渡されている箇所」を探すだけでも、危ない匂いのする場所には気づけるようになります。

AIへの聞き方を変えるだけで、確認の質が変わる

ここで大事なのは、こうしたチェックを全部自分の頭だけでやる必要はないということです。AI自身に確認させる、という選択肢があります。

悪い例:

動いたからOK

これだと、AIは「では次は何を作りますか?」という反応しか返せません。確認の指示になっていないからです。

良い例:

このコードを、①ハードコードされた値 ②エラー処理の有無 
③変数名の分かりやすさ の3点でチェックして、
直した方がいい箇所を教えて

こう聞くだけで、AIは指定した3つの観点に絞ってコードを読み直し、該当箇所を具体的に指摘してくれます。「動くコードを書かせる力」だけでなく「書かせたコードを的確にレビューさせる指示力」も、AIと一緒に開発していく上では同じくらい重要なスキルです。プログラミングの知識と、AIに的確に指示を出すスキルは、学習の過程で自然と同時に身についていきます。

「完璧」を目指さなくていい

誤解しないでほしいのですが、これは「未経験のうちから全部完璧にチェックしろ」という話ではありません。むしろ逆で、チェックする観点を3つか4つに絞っておけば、初心者でも十分にできるという話です。

動いた後に一呼吸置いて、「ハードコードされた値」「エラー処理」「変な繰り返し」の3つだけ聞いてみる。それだけで、AIが書いたコードへの向き合い方が少し変わってきます。「動かす力」の次に「見極める力」を育てていく、そのための最初の一歩として試してみてください。


面談なしで、今日から始められます

この講座は 未経験から Next.js + Supabase + Claude Code で Webアプリを作って公開するまで を全20セッションで体系化した教材付きプランです。無料相談を挟まず、申し込んだその日から教材で学習を始められます。AIが学習パートナーになって何度でも質問でき、つまずいた所だけチャットで直接サポートします。

  • 今日から始める(教材完全版+月5,500円・チャット質問し放題・いつでも解約OK)→ https://menta.work/plan/20251?ref=menta
  • いきなりは不安な方へ:無料の教材体験版もあります(最初の数セッション分)→ プラン詳細をご覧ください