better-codeはコーディング学習者と経験者をつなぐ、
コードレビューのプラットフォームです。
better-codeはコーディング学習者と経験者をつなぐ、コードレビューのプラットフォームです。
皆さんは、コードレビューを受けたことがありますか?
書いたコードを他の人に見てもらうことで、より良いコードが書けるようになります。
では、コードレビューではどのように学べるのでしょうか?
実際に見てみましょう!
皆さんは、コードレビューを受けたことがありますか?
書いたコードを他の人に見てもらうことで、より良いコードが書けるようになります。
では、コードレビューではどのように学べるのでしょうか?実際に見てみましょう!
レビューのお題
買い物アプリを作っています。
コードレビューお願いします!
了解!順番にコメントしますね。
まず、変数のa, b, cは何を表していますか?
どんな計算かがひと目でわかるように、中身を表す名前にしましょう。
変数名を修正しました!
aは単価なのでunitPrice、bは購入個数なのでcount、cは税率なのでtaxRatio
にしました。これでどうですか?
変数名を修正しました!
aは単価なのでunitPrice
bは購入個数なのでcount
cは税率なのでtaxRatio
にしました。これでどうですか?
良くなりました!
変数の役割や、計算の内容が明確になりましたね。
これでプログラムが正しいかどうか、判断しやすくなりました。
コードは読んで理解できることが大切です。不具合が起きにくく、改修も楽になります。
わかりました。適切な名前をつけます!
では、さらにこのコードを改善しましょう!
関数calculateには、合計金額の「計算」と「表示」の2つの役割があります。
ところで、もし後で「表示はせず、特定の場合だけ合計金額から割引」したくなったら
どうしますか?
この関数を使うと表示までされてしまうので、
別にもう一つ関数を作ろうと思います。なぜですか?
そうすると、似たようなコードが増えて、管理が複雑になってしまいますね。
合計金額の計算部分は共通して使えるように、calculateの内容を合計金額の計算だけ
にしてみましょう!
関数の役割を「合計金額の計算」だけに修正しました。これでどうですか?
これなら、1割引にしたい部分はcalculate(100, 2, 0.8) * 0.9と書けば、
合計金額の計算処理は1つだけで済みますね。
いいですね!役割を整理したかいがありました。
基本的に、1つの関数には1つの役割だけを持たせましょう。
再利用が可能になるほか、関数の意味がわかりやすくなります。
では最後の仕上げです!
関数の役割が明確になったので、その役割を表す関数名に変えてみましょう。
うーん、今のままでも良さそうですが…
もっと良い名前がありますか?
calculateだと、計算することはわかっても、何の計算かがわかりません。
また、計算結果が表示されるか、戻り値になるかも、名前からは想像できませんね。
例えばgetTotalPriceはどうですか?
こうすると、「合計金額を戻り値として受け取る」ことが明確になります。
どんな挙動か、呼び出し側で具体的にイメージできる名前が良いのですね。
これで「合計金額を受け取って結果を表示する」という処理が
一目でわかるようになりました。
かなり読みやすくなりました!ありがとうございます!
適切な命名や、関数の役割をシンプルに保つ意識は、良いコードを書けるようになるため
の第一歩です。引き続き、色々な改善方法を学んでいきましょう!
コードレビューによって、自分のコードの問題点やその理由、具体的な改善案を学べます。
better-codeは、学習のためのコードレビューを無料で募集できるサービスです。
ファイルをアップロードして待つだけ。
Gitの知識はいりません。
まずはレビューしてほしいファイルをアップロード
ポートフォリオや練習問題など、ファイルをアップロードします。
公開可能なファイルなら何でもOKです。
経験者からのレビューを待ちます
あなたのコードに興味を持った経験者がレビューします。
レビューをお願いしたい人を検索して、直接依頼することもできます。
納得いくまで質問しましょう
レビューにわからない点があれば、納得いくまで質問しましょう。
修正したファイルをアップロードして、再度見てもらうこともできます。
※コードの公開やレビューは誰でも可能です。システム上、学習者と経験者の区別はありません。
コードレビューを受けた
できなかった点が一つずつ身について、できるようになっていく実感がもてた。
考え方や進め方がわかったので、今度から自分でより良いコードが書けそう。
今の自分に足りない点や、次に学習すべきことを
教えてもらえた。
コードの良し悪しの判断軸を知り、自信のなかった点が問題ないと確信できた。
レビューのやりとりで、
あいまいだった理解が明確になってスッキリした。
自分のコードのどこがなぜイマイチなのかわかり、具体的な改善方法も知れた。
さっそく手元のコードで、レビューを依頼してみましょう!
うまく書けていてもそうでなくても、人に見せると発見があるはずです。
少しハードルが高いと感じたら、まずは他の人のコードやレビューをのぞいてみませんか?
better-codeで、一緒に良いコードが書けるようになりましょう!
無料ではじめるできなかった点が一つずつ身について、できるようになっていく実感がもてた。
考え方や進め方がわかったので、今度から自分でより良いコードが書けそう。
今の自分に足りない点や、次に学習すべきことを教えてもらえた。
コードの良し悪しの判断軸を知り、自信のなかった点が問題ないと確信できた。
レビューのやりとりで、あいまいだった理解が明確になってスッキリした。
自分のコードのどこがなぜイマイチなのかわかり、具体的な改善方法も知れた。
さっそく手元のコードで、レビューを依頼してみましょう!
うまく書けていてもそうでなくても、人に見せると発見があるはずです。
少しハードルが高いと感じたら、まずは他の人のコードやレビューをのぞいてみませんか?
better-codeで、一緒に良いコードが書けるようになりましょう!
無料ではじめる
better-codeでコードレビューをしてみませんか?
レビューは学習者の力になるだけでなく、自分自身の思考が整理されたり、
新たな気づきを得られたりと、スキルアップにつながります。
ぜひ、どんなコードがあるのか見に行ってみてください。
※レビューを有料で引き受ける機能も開発予定です。
コードを見に行く
better-codeでコードレビューをしてみませんか?
レビューは学習者の力になるだけでなく、自分自身の思考が整理されたり、
新たな気づきを得られたりと、スキルアップにつながります。
ぜひ、どんなコードがあるのか見に行ってみてください。
※レビューを有料で引き受ける機能も開発予定です。
コードを見に行く