😄

【基礎編】ChatGPTを用いた既存のコードを別の言語で書き直す方法

2023/08/21に公開

プログラミングの世界では、異なるプログラミング言語を使用して同じ機能を実現することがあります。しかし、新たなプログラミング言語を習得するには多くの労力と時間が必要になります。そこで本記事では、OpenAIのChatGPTを活用することで効率的に、Pythonコードを別の言語であるC#に書き直す方法を分かりやすく解説します。

目次

  1. はじめに
  2. 既存のコードの理解
  3. 新たなコードへの書き換え
  4. 新たなコードの理解
  5. 他の方法の模索
  6. 注意点
  7. まとめ

1. はじめに

異なる言語で同じ機能を実現するためには、新しい言語の文法や特性を学び、元のコードのロジックを適切に変換する必要があります。しかし、新たな言語を習得するにはどうしても労力と時間がかかります。ここでは、ChatGPTを使用して、コードをPythonからC#へ効率的に書き換える方法を学びましょう。

2. 既存のコードの理解

ここでは例として、以下のリストの要素の並び順を逆順にするシンプルなPythonコードを考えてみます。

my_list = [1, 2, 3, 4, 5]
reversed_list = my_list[::-1]
print(reversed_list)

ポイントは、以下の3点です。

  1. リストを宣言する。
  2. リストの要素の並び順を逆にする。
  3. 逆順にしたリストの要素を画面に表示する。

3. 新たなコードへの書き換え

先ほどのPythonのコードをC#に書き換えていきましょう。
C#についてある程度の知識があれば一瞬で終わってしまうのですが、C#を学んだことがない方にとってはなかなか大変な作業だと思います。特に今回のようにPythonでは型の宣言やクラスが必要ないのに対し、C#のように型宣言やクラスが必要になるケースにおいてはコードの書き換えにより時間がかかるかと思います。(今回のサンプルコードは比較的簡単なロジックですが、これが複雑なロジックになれば尚更大変になります。)
従来的な書き換え方法としましては、プログラミング初心者向けの本やネットを使って調べるという方法が一般的だったと思います。しかし、最近話題のChatGPTを用いることでより効率的に新たなプログラミング言語の習得、コードの書き換えを行うことができます。
それでは早速ChatGPTに以下の文章を投げてみます。

以下のPythonで書かれたコードをC#で書き直してください。
Code: """
my_list = [1, 2, 3, 4, 5]
reversed_list = my_list[::-1]
print(reversed_list)
"""

ChatGPTの回答はこちらです。

実際にChatGPTが書いたコードを実行すると問題なく動くことが確認できると思います。

4. 新たなコードの理解

今回の例ではシンプルなコードを用いているため、先ほどの回答だけで理解できたかもしれませんが、コードが複雑になると「ここのコードではどのような処理をしているのだろう?」、「このメソッドはどういう使い方ができるのだろう」といった疑問が出てくることがあるかと思います。そういった場合もChatGPTに聞くことで効率的にコードを理解することができます。
ChatGPTに以下の文章を投げてみます。

Reverse()メソッドについて解説をしてください。

ChatGPTの回答はこちらです。

さらにChatGPTに質問をしてみます。

先ほどのコードにおける下記のコードでは何をしているかの解説をしてください。
Console.WriteLine(string.Join(", ", reversedArray));

ChatGPTの回答はこちらです。

しっかりとコードの説明をしてくれていることが分かりますね!

5. 他の方法の模索

コードが正しく動作することを確認したら、最適化の余地があるかを検討します。ChatGPTが必ずしも最適な方法を提供しているとは限りません。そのため、ChatGPTへの質問の仕方を変えたり最終的には自分で調べたりする必要があります。あくまでChatGPTが提示した回答は一例であることを忘れないようにしましょう。

6. 注意点

回答にバラツキがある

残念ながらChatGPTの回答が常に正しいとは限りません。また、同じ文章を投げたとしても回答が異なるケースもあります。特に仕事等で用いる場合は、生成されたコードを鵜呑みにするのではなく、自分の目で確かめて適切にコードの書き換えが行われているかを確認する必要があります。

個人情報や会社の機密情報は入力しない

ChatGPTが会話データを学習に使う可能性がある以上、情報漏洩につながってしまう恐れのある行動は絶対に避けましょう。

7. まとめ

本記事では、OpenAIのChatGPTを活用することで、効率的にPythonコードを別の言語であるC#に書き直す方法を解説しました。ChatGPTを用いることで新たなプログラミング言語を学ぶハードルがかなり下がったと思います。
皆さんも是非、ChatGPTを利用して新たなプログラミング言語を学んでみてください!

株式会社piponでは定期的に技術勉強会を開催しています。
ChatGPT・AI・データサイエンスについてご興味がある方は是非、ご参加ください。
https://chatgptllm.connpass.com/
株式会社piponではChatGPT・AI・データサイエンスについて業界ごとの事例を紹介しています。ご興味ある方はこちらのオウンドメディアをご覧ください。
https://bigdata-tools.com/

株式会社piponのテックブログ

Discussion