システム開発入門の第10週目では、ほかの人が書いたPythonコードを読み、気付いた点を相手へ伝える実習に取り組みました。
コードレビューとは、コードの動作や読みやすさを確認し、良い点や改善案を理由とともに伝え合う作業です。
今回は、正解を一方的に示すのではなく、書いた人と読んだ人が一緒にコードを良くするための対話として学びました。
コードレビューで確認した四つの点
田中先生:「レビューの目的は、“ダメ出し”ではなく“より良くするための気づき”を伝えることです。」
授業では、この考え方を具体的な確認項目に分けました。
| 確認する点 | 読むときの問い |
|---|---|
| 動作 | 誤字や脱字、動作を妨げる箇所はないか |
| 読みやすさ | 処理の流れを追いにくい箇所はないか |
| 名前 | 関数名や変数名から役割を想像できるか |
| 説明 | コードだけでは意図が伝わりにくい箇所に説明があるか |
確認項目があると、「何となく読みにくい」という感想を、相手が検討できる具体的なコメントへ変えやすくなります。
おみくじコードを上から順に読む
最初の実習では、先生が用意した短いおみくじコードを読みました。
import random
def omikuji():
result = random.choice(["大吉", "中吉", "吉", "凶"])
print("結果は:" + result)
omikuji()
コードを読むときは、最初から改善点を探すのではなく、まず処理の流れを確かめます。
import randomで、ランダムな選択に使う機能を読み込みます。omikuji()という関数の中で、おみくじの処理を定義します。random.choice()が四つの候補から一つを選び、resultへ入れます。print()が結果を表示し、最後のomikuji()が関数を呼び出します。
処理を説明できる状態になってから、「どこを変えると意図が伝わりやすくなるか」を考えました。
改善案をコードで確かめる
生徒A:「関数名はいいけど、結果の表示をもう少し説明的にした方がいいかも」
生徒B:「ランダムの中身をリストに分けてもいいかも」
二つのコメントを反映するなら、次のような書き方が一案になります。
import random
def omikuji():
results = ["大吉", "中吉", "吉", "凶"]
result = random.choice(results)
print("おみくじの結果:" + result)
omikuji()
候補をresultsへ分けると選択肢のまとまりを見つけやすくなり、表示を「おみくじの結果」とすれば何の結果かが明確になります。
これは唯一の正解ではなく、コメントの意図を具体的な変更として確かめるための例です。
理由を添えると改善案を検討できる
田中先生:「“理由を伝えるレビュー”が大事。意見の背景に“なぜ”があると、相手にも伝わりやすくなりますよ。」
「分かりにくい」「短くした方がよい」だけでは、書いた人はどこをどう直すべきか判断しにくくなります。
授業のコメントは、次の四要素に分けると組み立てやすくなります。
- 対象:どのコードについて伝えるか
- 気付き:何が読みやすいか、または分かりにくいか
- 理由:なぜそう感じたか
- 提案:どのような変更を試せるか
たとえば、「結果の表示を変えた方がよい」ではなく、「『結果』だけでは内容を判断しにくいため、『おみくじの結果』にすると目的が伝わりやすい」と書けば、変更の狙いまで共有できます。
ペアレビューで伝え方を練習する
続くペア実習では、第9週目の学びを引き継ぎ、生徒同士でミニアプリのコードを交換しました。
- 相手のコードを読み、何をする処理か確かめる
- 分かりやすかった点や工夫を伝える
- 気になった箇所へ理由と改善案を添える
- コメントを受け取ったら感謝を伝える
生徒C:「この関数名わかりやすかったです!」
生徒D:「繰り返しの部分、
forで書くともっとシンプルになるかも」
良い点を先に具体化すると、書いた人は残すべき工夫を理解できます。
一方、for文への変更案は、同じ処理がどのように繰り返されているかを確認してから採用を判断します。
引用だけでは元の繰り返し処理を確認できないため、この提案が適切かどうかは本文から断定できません。
for文の基本は、第4週目の繰り返し処理の実習でも確認できます。
生徒の振り返りから見えた学び
- 「人のコードを見るのって、こんなに学びがあるとは思わなかった」
- 「書くときに“読まれる”ことを意識するようになった」
- 「いいところも伝えるって大事。ちょっと照れるけど嬉しい」
三つの振り返りには、ほかの書き方から学ぶこと、自分のコードを読む人を意識すること、良い点も言葉にすることが表れています。
先生のひとこと:「プログラムは“書く力”と“読む力”が両方大切です。そして何より、“伝える力”があると、開発はもっとスムーズになります。今日はその第一歩を踏み出しました。」
コードレビューでは、書き方だけでなく、相手が検討できる形で理由を伝える力も練習できます。
次の授業はアプリ設計へ
次の第11週目では、作り始める前にアプリの内容を考え、設計図と仕様書を用意する段階へ進みます。
第10週目に学んだ「読む」「理由を伝える」という姿勢は、自分の設計をほかの人に説明し、改善する場面にもつながります。
この記事に関連する株式会社greedenの取り組み
コードを読める形に整え、理由を添えて改善案を共有する習慣は、開発品質を支えます。株式会社greedenは、要件定義から実装、テスト、保守まで一気通貫でWebシステム開発を支援しています。

