WebエンジニアによるChatGPTおすすめ活用法 9選

みなさま、ChatGPTは活用していますか？

https://openai.com/

Qiitaやはてブでは、連日多くのChatGPTに関する記事が投稿されており、話題になっていますね。

私も毎日のように活用しており、とても便利だと感じています！

そこで今回は、私が普段どのようにChatGPTを活用しているかについてお伝えしていきます！

どれか一つでも参考になれば幸いです。

## 前提

私はGPT-3（無料版）を使用しています。

また、プロンプトはできるだけ敬語にしています。

（その方がいい回答をもらえると聞いたので）

普段はPHPを用いたWebエンジニアの開発に携わっています。

では本編です！

## 結論

私はChatGPTを、以下の9項目について活用しています。

**1. エラーの解消**
**2. 処理内容の理解**
**3. 命名**
**4. 要約**
**5. データの変換作業**
**6. 正規表現**
**7. リファクタリング**
**8. テストコード実装**
**9. アイデア出し**

以下詳細です！

### 1. エラーの解消

実装中に何かエラーが発生したら、以下のように尋ねるようにしています。

```prompt
以下は（言語）のコードです。

（コードを記載）

以下のエラーが発生します。

（エラーメッセージ）

エラーを修正してください。
```

実際にCakePHPのエラーについて尋ねる際は以下のようになります。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-172502.png)

すると、的確な返答が返ってきます。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-173229.png)

今回は簡単な例ですが、もっと複雑な長文のコードを送ってもきちんと処理してくれます。

ChatGPTがなかった時代（といってもほんの数ヶ月前！）までは、いちいちエラーメッセージでWeb検索し、ブログやドキュメントを開き……という工程を踏んでいたと考えると、本当に楽にエラー解消ができるようになったと感じます。

（自分自身の実装能力が犠牲になっている気はしますが:sweat_smile:）

### 2. 処理内容の理解

他の人が書いたコードで、自分の知らない記述や複雑な処理などを見つけたら、ChatGPTに処理内容について以下のように尋ねるようにしています。

```prompt
以下は（言語）のコードです。

（コードを記載）

処理内容を教えて下さい。
```

具体例を見てみましょう。

Laravelのコードで、知らない記述があったので聞いてみました。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-174030.png)

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-174043.png)

めちゃくちゃわかりやすく説明してくれます！

（ただし正確な情報ではない可能性もあるので、最終的にはドキュメントを参照しましょう）

### 3. 命名

さすがは英語圏のサービスということで、命名については非常に優秀です。

実装をしていると、命名というのは頻繁に行わなくてはなりません。

以前は単語を英訳したり、文法を調べたりして時間をかけて命名していましたが、今はChatGPTに聞けば一発でピッタリの命名候補を挙げてくれます！

具体的には以下のように聞いています。

```prompt
（言語）で、以下の処理を行う際のメソッド名をキャメルケースで考えて下さい。

- （処理内容を記載）
```

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-175025.png)

これについては、そのまま採用させてもらうことが多いです！

英語力低いマンとしては、本当に助かります:pray:

### 4. 要約

読みにくい文章に出会った場合に、要約してもらっています。

試しに、自分で書いた変な文章を要約してもらいます。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-175935.png)

いい感じに要約してくれて、すっと頭に入ってきます！

### 5. データの変換作業

特に多いのが、Markdownのテーブル関連です。

例えば、列を追加したり、行と列を入れ替えたりしてもらっています。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-180459.png)

こういう作業って、手でやるととても辛くてしんどいのですが、ChatGPTにお願いすればスラスラと出力してくれるので本当にありがたいです！

### 6. 正規表現

もう正規表現を手で書くことは無くなりました！

以下のプロンプトを実行することで、すべて書いてくれます。

```prompt
以下の条件に合致する正規表現を書いて下さい。

- （判定したい内容を記載）
```

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-190432.png)

正規表現って、個人的にはたまにしか使わない割に覚えることが多くて、いつも大変な思いをしていました。

ChatGPTのありがたみを実感する瞬間ですね:thumbsup:

### 7. リファクタリング

以下のようなプロンプトで、リファクタリングをお願いしています。

```prompt
以下は（言語）のコードです。

（コードを記載）

リファクタリングできる箇所はありますか？
```

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-185735.png)

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-185840.png)

大抵はそのままでは動かないので、少し手をいれる必要があります。

（エラーが発生した場合は、エラーの解消をChatGPTにお願いしています）

最近リファクタリングに関する書籍を読んでいるので、実装が終わったらすぐにリファクタリングをするようにしています！

自分では思いつかないスマートな記述をしてくれるので、おすすめですよ。

### 8. テストコード実装

こちらもよく使います。

下記のようなプロンプトです。

```prompt
以下は（言語）のコードです。

（コードを記載）

テストコードを実装して下さい。
```

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-181517.png)

いい感じにテストコードが実装できてしまいました！

（個人的には`assertEqual`よりも`assertSame`を使いたいけど）

テスト駆動開発も楽にできそうです。

### 9. アイデア出し

最後に、アイデア出しについてです。

以下のようなプロンプトです。

```prompt
〇〇について考えています。

案を10個出して下さい。
```

例えば、新たにWebアプリを作る際のアイデアを出してもらいました。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-182100.png)

内容はともかく、スッと10個出してくれるのが気持ちいいです！

ブレスト感覚でいくつもアイデアを出してもらえるので、いい刺激になっています。

以上、ChatGPTおすすめ活用法 9選でした。

## おまけ

### 活用しない方がいい項目

ここまではChatGPTの得意分野について述べてきましたが、当然苦手な分野も存在します。

ここからはChatGPTを活用しない方がいい項目について述べていきます。

### 1. 事実について尋ねる

ChatGPTに対して、事実を尋ねてはいけません。

アレクサやSiriのイメージで使ってしまうと、おかしなことになります！

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-182845.png)

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-183536.png)

GPT-3なので仕方ない面はあるにしても、それにしたってめちゃくちゃです。

（面白いからいいけど！）

基本的に、「〇〇について教えて」と尋ねると不正確な返答を返してくる、と思った方が良さそうです。

2. おすすめのサービス・お店などを尋ねる

存在しないお店やサービスなどを平気でおすすめしてきます。

![](https://images-for-yajima-tech-blog.s3.ap-northeast-1.amazonaws.com/screenshot-2023-05-11-183413.png)

今回試した結果、全て存在はしていますが、蔵前からはかけ離れた位置にあるお店をおすすめしてきました。

（お店自体はいい感じなので今度行ってみようと思います:coffee:）

この辺はまだまだ自分で調べるのが良さそうです。

## まとめ

**WebエンジニアによるChatGPTおすすめ活用法 9選**は以下通りです。

1. エラー解消
2. 処理内容の理解
3. 命名
4. 要約
5. データの変換作業
6. 正規表現
7. リファクタリング
8. テストコード実装
9. アイデア出し

0 → 1 の工程をまるっとやってくれるので、開発がとても楽になったと感じます！

チャット形式なので、個々のケースに合わせて回答してくれるのが嬉しいですよね。

例えばエラー解消については、解消後のコードまで提示してくれるのが本当に助かります。

実装していても、あまり疲れなくなったような気がします（気のせい？）。

逆に、下記2点については（少なくともGPT-3では）おすすめできません。

1. 事実について尋ねる
2. おすすめのサービス・お店などを尋ねる

以上、WebエンジニアによるChatGPTおすすめ活用法 9選でした！

上手に活用して、楽しく開発していきましょう！

それでは。