ChatGPTを活用したプログラミング

その他

 2022年冬ごろからよく聞くようになった,「ChatGPT」.AIの力でいろんなことができてしまいます.今回は,ChatGPTを活用して,簡単に高度なプログラムを書くためのポイントをまとめていきます.
この記事で使用するプログラミング言語は,Pythonとします.しかし,基本的な考え方はどの言語でも一緒ですので読んでいただければ幸いです.

チュートリアル

 最初に,チュートリアルとして,「Hello, world!」を表示するプログラムを作成します.メッセージ入力欄に,「Pythonで,Hello, world!と表示して」と入力します.

 入力すると,このようにプログラムとその説明が生成されます.基本的なプログラムならば,ChatGPTに書いてもらうだけで終わります.素晴らしい時代です.では,本編に行きましょう.

答えがわからないプログラムの生成

 プログラミングで一番困るのは,「ある処理がしたいけど,必要な関数もライブラリもわからん!」という場面です.しかし,ChatGPTがあれば,こういう場面は大概どうにかなります.例として,「Pythonでサーバーを立てて,test.htmlを表示できるようにして」と入力してみます.

 入力すると,このような回答が得られます.なんと,サーバーを立てるプログラムだけではなく,test.htmlの例も表示してくれました.また,Pythonのプログラムを見ると,サーバーを立てるには「http.server」と「socketserver」をインポートすればいいことまでわかりました.あとは,このライブラリの使用例を確認しつつデバッグすれば,立派なプログラムの完成です.

 注意として,ChatGPTはたまに使えないプログラムを生成します.そのため,動作確認は必須です.また,古いライブラリを提示してくることもあります.ChatGPTに提示されたライブラリは,一度自分で調べてから使用すると良いでしょう.

プログラムについて質問

 ChatGPTに生成してもらったプログラムが動いたとしても,そのままプログラムを提出するのは好ましくないです.例えば,「関数の引数によくわからないものが入っている」や「そもそもこの関数なんだ」という状態でプログラムを提出した場合,その後プログラムを拡張する際に訳がわからなくなってしまいます.また,プログラマーとして何も成長できません.そのため,わからないことはわからないとChatGPTに投げかけましょう.例として,先ほど生成したサーバーを立てるプログラム内の,「handler = http.server.SimpleHTTPRequestHandler」について質問してみます.

 質問すれば,このように関数などの詳細が返ってきます.公式のリファレンスを見るよりも手軽に詳細がわかってしまいます.また,英語のリファレンスを読む必要もありません.本当に便利です.ですが,たまに情報漏れがあります.余裕があればリファレンスも読みましょう

プログラムにコメントを付与

 ChatGPTに生成してもらったプログラムが,なんのこっちゃわからない時があります.この場合,一つ一つ調べていては時間がかかってしまいます.そこで,ChatGPTにプログラムの詳細なコメントを書いてもらいましょう.例として,先ほど生成してもらったサーバーを立てるプログラムにコメントをつけてもらいます.わかりやすいように,最初に生成してもらったときについてコメントを消したプログラムが下のものになります.

import http.server
import socketserver

port = 8000

handler = http.server.SimpleHTTPRequestHandler

with socketserver.TCPServer(("", port), handler) as httpd:
    print(f"Serving on port {port}")
    httpd.serve_forever()

 こんなに詳細なコメントをつけてくれました.このように,全てにコメントをつけて貰うことでプログラムを理解しやすくするという使い方もできます.

最後に

 いかがでしたでしょうか.ChatGPTが出てから,プログラミングの方法がガラッと変わった印象です.気をつけなければいけない点もいくつかありますが,上手に使えば本当に素晴らしいツールです.ぜひ皆さんも活用してみてください.最後までご覧いただき,ありがとうございました!

コメント

タイトルとURLをコピーしました