ChatGPTに書いてもらった:リファクタリング:チームで共有する「良い」を目指すアプローチ

この記事は、ChatGPTに書いてもらいました。


リファクタリングは、コードの品質を向上させるために行われるプロセスですが、これは「少しずつ良くしていく」「壊さずに改善していく」というアプローチ全般に適用できる言葉だと言えます。しかし、「良くする」の方向性が問題となることがあります。

特に、チームで開発を行っている場合、各メンバーが異なる「良い」という基準を持っていると、統一感のないコードになってしまうことがあります。そのため、チーム内で「良い」を共有し、リファクタリングの方向性を明確にすることが重要です。

アイデアとして、「末端から攻める」リファクタリングを考えてみましょう。これは、関数で使用されている引数の影響度を減らすことを目的としています。たとえば、引数がDictionary型である場合、実際に使用する値だけに絞り込むことができます。また、引数がクラスの場合、使用する値だけのインターフェースに絞り込むことができます。

このようなアプローチを取ることで、コードの可読性や保守性が向上し、チームメンバー間で共通の「良い」を追求することができます。リファクタリングは、個人の主観を超えて、チーム全体で共有される価値観を大切にしながら進めることが、より良い成果を生み出す鍵となります。


これを生成するのに使ったプロンプト:

以下は、自分のscrapboxにあったネタの一つです。このネタを元に、500文字ぐらいのブログ記事を書いてください。
----
リファクタリング
 リファクタリング
 	ソースのリファクタリングでもそうだけど、「少しずつ良くしていく」「壊さずに改善していく」アプローチ全般に使える言葉だと思う。
	これを考えるときに悩むのが、「良くする」の方向性。
 	一人だったら自分の良いようにすればいいだけ
  でも多人数だったら?
  	ここ話をしていないと、きっとみんなの方向性がバラバラでおかしなことになる。
   俺の考える良いが、みんなの考える良いだとは限らない。
 アイデア「末端から攻める」
 	関数で使われてるだけの引数の影響度を減らす
  	引数がDictionaryだったら、使う値だけに絞る
   引数がクラスなら、使う値だけのInterfaceに絞る

元々のネタが、方向性のない短文の集合なのだけど、chatgptはなんらかの方向性を組み立ててる。今回だと「チームでの成果への影響」的な方向性。

これはプロンプトにある「ブログ記事」ってのが影響しているのかも。世の中のブログ記事で、リファクタリングに関連する記事はチームでの成果につなげる話が多いから、それに引っ張られてるのかもしれない。
となると、世の中に大量にあふれるテキストの、平均的な方向性にひっぱられるような生成になっているのかもしれない。