リファクタリングでコードを整理しよう

今回の水曜日のクラブ活動が、夏休み最後のクラブです。生成AI活用と同時に、コンピューターの仕組みを学習しました。

メニュー

  • 18時00分~18時30分 タイピング練習・アルゴロジック
  • 18時30分~21時00分 プログラミング各自の進み具合で

タイピング練習とアルゴロジック

タイピング練習とアルゴロジックはいつものとおりです。

無料タイピング https://manabi.benesse.ne.jp/gakushu/typing

寿司打 https://sushida.net/

アルゴ2は、難しいのです。分岐が選択肢として増えるだけで、こんなに難しくなるなんて。2にした理由がわかります。

生成AIを使ってリファクタリングをする

リファクタリングとは、簡単に言うと書いたコードの整理です。

プログラムコードを書いていて、機能を追加、追加していると、次第に何を書いているのかわからなくなります。家の増改築を繰り返していると、家全体として統一感のない作りになってしまうのと似ています。

そこで、プログラムの機能を変えずに、コードを書き直します。家でいうと、トータルリフォームするイメージでしょうか。

すると、コードが読みやすくなって、保守性が上がります。今後、新しく機能追加したり、機能の修正をするときに、これが威力を発揮するのです。

生成AIにプログラムを作らせたとしても、一回で完成形のプログラムが出て来るわけではありません。何度も生成させて(修正して)、意図通りのプログラムに仕上げていきます。

一通り出来上がったらリファクタリングすると、コード全体がスッキリします。

もちろん万能ではないので、慣れてきたら自分でもコード全体を読んで、さらに最適化することも重要です。まずは、「リファクタリング」という概念を知ることが大事です。

また、リファクタリングも生成AIモデルによって結果が違います。GPTとClaudeだとわかりやすく違うので、是非試してください。

わからない言葉や概念は生成AIに解説させる

生成AIは、ときに自分の理解を超えた解説をしてくることがあります。水曜クラブのメンバーには、オブジェクト指向を教えていないので、プログラムの「クラス」という言葉を知りません。

リファクタリングをしていると、「クラスを作ってまとめました」というのが頻繁に出てきます。わからなかったら、聞けばいいのです。

「クラス」について、Python初心者がわかるように解説してください。

「クラス」について、Python初心者の小学生がわかるように解説してください。

生成AIに、このようなプロンプトで指示するだけで、詳しい解説が表示されます。

「小学生がわかるように」というところは、適宜変えてください。「小学生」だと話が抽象的すぎて、反対に何のことやらわからなくなることもあります。「中学生」に変えると、また違った答えを返してくれます。

高校生が「小学生にわかるように解説してください」と、人間の先生に言うのは気が引けると思います。恥ずかしさであったり、先生に対する配慮であったり、思惑は色々あるでしょう。

しかし、生成AIが相手だったら、恥ずかしさはなく、いくらでも聞けるのではないでしょうか? しかも何度聞き返しても、生成AIは機嫌を損ねることはありません。

これ、学校の勉強にもそのまま使えます。学校の授業でわからないことを、生成AIに投げたら、理解度に応じていくらでも解説してくれます。適切に生成AIを使えれば、学習塾は不要です。←もちろん、わたしたちのクラブも例外ではありません。

こんな強力なツールが、無料で使える世の中になったとは、私達はすごい時代に生きていますね!

ストレージの仕組みとディレクトリのツリー構造を知ろう

コマンドラインで操作をするとき、WindowsならCから始まるディレクトリのツリー構造を知らないと操作できません。そこで、ツリー構造についてレクチャーしました。

ツリー構造を「住所と一緒ですね」と理解したようで、そのとおりです。勘がいい!

ついでに、ストレージの変遷(HDD→SSD)と内部構造のかんたんなレクチャーもしました。なんでAドライブとBドライブがなくて、Cドライブから始まるのかも。

コマンドラインで操作をすると、色々便利なことがあります。GUIとどちらが優れているかという話ではなく、場合によって使い分ければよいことです。

このような周辺知識について、すぐに聞けるのがクラブの良いところかもしれません。